#такое дня
Я как-то под новостью о том, что браузеры начали внедрять очередной виджет форм (selectmenu) написал, что браузеры ни один элемент форм не сделали нормально.
Собеседник обиделся.
Но даже такой простой элемент как текстовое поле (input type="text") не обошёлся без проблем. Мы уже знаем, что size="1" неправильно работает в Firefox
потому что IE. А теперь ещё интересного: атрибуту maxlength нельзя слепо доверять.
Что делает maxlength? Не даёт ввести в поле символов больше, чем указано. Если вставите — браузер обрежет (уже звоночек).
Дальше веселее.
Эмодзи во всех браузерах считаются по глифам, и только Safari — считает за 1 символ. Ссылка на баг: https://bugs.webkit.org/show_bug.cgi?id=252900
Поведение Safari верно с точки зрения человека, но... браузеры пишут инженеры.
Ещё из проблем — скринридеры никак не оповещают о том, что длина превышена. Сплошное веселье.
В любом случае, не забывайте, что ничему приходящему со стороны браузера в принципе доверять нельзя.
#html #maxlength #bug