step: разрешённый шаг числового поля
Атрибут step описывает дискретность допустимых значений числового поля, а не только величину изменения стрелками.
Назначение
Атрибут step описывает дискретность допустимых значений числового поля, а не только величину изменения стрелками.
Как это работает
Проверка шага отсчитывается от базового значения; для number им обычно служит min, затем значение value либо ноль. Для произвольной дробной величины можно использовать step=any, сохраняя остальные ограничения.
Пример
<label for="length">Длина с шагом 0,25</label>
<input id="length" name="length" type="number" min="0" step="0.25" value="0.5">
Что должно получиться
Половина соответствует двум шагам по 0.25. Значение 0.3 не кратно шагу от нулевой базы; десятичный разделитель в интерфейсе зависит от локали браузера.
Граница применения и частая ошибка
Не считайте, что min=0 автоматически разрешает любую десятичную дробь. Для number шаг по умолчанию равен единице, поэтому нужно явно выразить нужную точность.
Самостоятельная проверка
Проверьте 0.25, 0.5 и 0.3. Затем измените шаг на any: третье число должно перестать конфликтовать с шагом, но нижняя граница продолжает действовать.
HTML и CSS можно изменить в песочнице ниже. Она изолирована: JavaScript, внешние ресурсы и отправка форм отключены. Для проверки сетевых запросов, отправки данных или функций браузера используйте отдельную локальную страницу.