Получи случайную криптовалюту за регистрацию!

#такое дня Я как-то под новостью о том, что браузеры начали в | Будни разработчика

#такое дня

Я как-то под новостью о том, что браузеры начали внедрять очередной виджет форм (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