DEV Community

Cover image for How to show a number-friendly virtual keyboard when clicking on an input HTML element on mobile devices?
MELVIN GEORGE
MELVIN GEORGE

Posted on • Originally published at melvingeorge.me

4 2

How to show a number-friendly virtual keyboard when clicking on an input HTML element on mobile devices?

Originally posted here!
To show a number-friendly virtual keyboard on a webpage when clicking on an input HTML element in mobile devices, you can use the type attribute with the value of number in the input HTML element.

TL;DR

<!-- A simple webpage with an `input` HTMl element -->
<html>
  <body>
    <label for="numberInput">Enter Mobile Number</label>
    <input type="number" id="numberInput" />
  </body>
</html>
Enter fullscreen mode Exit fullscreen mode

For example, let's say we have an input HTML element to take some numbers from the user on a webpage. Normally we would use the type attribute with the value of text to accept some values from the user.

The HTML for that would look like this,

<!-- A simple webpage with an `input` HTMl element -->
<html>
  <body>
    <label for="numberInput">Enter Mobile Number</label>
    <input type="text" id="numberInput" />
  </body>
</html>
Enter fullscreen mode Exit fullscreen mode

Now if we click on the input HTML element on a mobile device, a virtual keyboard pops up to enter the value to the input.

The keyboard looks like this,

side-by-side screenshots of simple virtual keyboard that is not number friendly on an ios phone

As you can see, the keyboards shown in the IOS OS device have a normal virtual keyboard without any help to write numbers easily for the user.

What I mean by this is, the number pad is not visible directly on the virtual keyboard and we would have to click the sections of the numbers to write it.

Now to remove this hassle, we can replace the value of text with number on the type attribute on the input HTML element.

It can be done like this,

<!-- A simple webpage with an `input` HTMl element -->
<html>
  <body>
    <label for="numberInput">Enter Mobile Number</label>
    <input type="number" id="numberInput" />
  </body>
</html>
Enter fullscreen mode Exit fullscreen mode

Now the virtual keyboard looks like this,

side-by-side screenshots of simple virtual keyboard that is number friendly on an ios phone

As you can see from the above image, the IOS device has the number pad directly shown to the user which helps the users to write numbers very easily.

We have successfully shown a number-friendly virtual keyboard on the webpage. Yay 🥳!

See the above code live in codesandbox.

That's all 😃.

Sentry blog image

How to reduce TTFB

In the past few years in the web dev world, we’ve seen a significant push towards rendering our websites on the server. Doing so is better for SEO and performs better on low-powered devices, but one thing we had to sacrifice is TTFB.

In this article, we’ll see how we can identify what makes our TTFB high so we can fix it.

Read more

Top comments (0)

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay