В HTML 5 было добавлено новое значение атрибута type у тега input – значение number. Значение полей с типом number валидируются браузерами, туда допускается вводить только числа (целые и дробные), а на мобильных устройствах отображается усечённая клавиатура, которая позволяет вводить только цифры. Читать далее HTML: input type=number и разделитель дробной части