crossfire
@crossfire

Как подобрать допустимое количество символов для строки, чтобы не поломалась верстка?

Как подобрать допустимое количество символов для строки если блок будет заполняться из поля ввода и нужно его ограничить?

Поясню, есть блок 180 px, там должен быть текст (имя пользователя) и он не должен переносится на новую строку. Шрифтом Helvetica на латинице в блок помещается 16 символов буквой W и 59 символов буквой I.
Получается на валидацию поля ввода надо ставить ограничение 16 символов, чтобы строка не перенеслась и не поломала верстку? Или может есть какие-то варианты просчитать общую длину строки которая получится перед приемом данных из формы? Как лучше поступить в такой ситуации?
  • Вопрос задан
  • 506 просмотров
Пригласить эксперта
Ответы на вопрос 3
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg
div.text {overflow:hidden; display:block; width: 180px; height:50px; text-overflow: clip; }
div.text>p:last-of-type:after {content:"...";}

Думаю идея понятно дальше допилить по вкусу.
Ответ написан
Комментировать
In4in
@In4in
°•× JavaScript Developer ^_^ ו°
Почитайте про text-overflow, может быть легче не ограничивать размер блока, а скрыть то, что не влазит. Мне кажется, это идеально.

А высчитать можно будет только динамически, то есть при вводе, ведь буквы (к примеру) "Ш" и "ь" имеют совсем разную ширину, а пользователь может ввести любой набор символов.
Под "динамически" я имею ввиду при каждом Нажатии клавиши обрабатывать его - получать ширину буквы (создавать Текстовый узел с этой буквой и получать его ширину) на нажатой клавише и уже исходя из оставшегося места в блоке либо делать preventDefault() и т.п, либо, собственно, допускать букву к вводу. Но это такая морока :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы