Здравствуйте, Shmj, Вы писали:
S>Сейчас еще эта бомбочка из заголовка — портит разметку вертикально. Это не один а много символов. Первый 9685 а потом множество 869. Выглядит как один символ, даже если их мильйон штук! Почему оно работает — толком не понял — может кто объяснит.
Символ 9685 не виноват, это просто символ круга с вырезанной четвертью: ◕
См.
https://www.compart.com/en/unicode/U+25d5
Но Unicode умный, он знает, что в некоторых языках используются
диакритические знаки — это всякие вспомогательные символы над или под основным символом. Для таких знаков в unicode есть специальные символы, которые можно комбинировать с другими.
Например: можно совместить букву A (
код #x410) и знак ͥ (
код #x365, которая выглядит как буква i
над символом) получится Aͥ (код #x410#x365)
Если поставить несколько таких вспомогательных знаков подряд, то можно получить такое: Aͥͥͥͥͥ (код #x410#x365#x365#x365#x365#x365)
Ну а если поставить много, то получится то, что мы видим сейчас на сайте.
Т.е. с точки зрения unicode (и браузера) это один валидный символ, просто очень-очень высокий.
S>Что делать с такими символами? Запрещать?
Такие символы запрещать, наверное, не надо.
А нужно поправить верстку. Для элемента, в котором содержатся символы, которые ввел пользователь, нужно прописать CSS-правило "overflow: hidden". Тогда, все лишнее будет обрезаться и не портить верстку.