У меня есть столбец таблицы, который должен быть ограничен определенной шириной - например, 100 пикселей. Иногда текст в этом столбце шире, чем этот, и не содержит пробелов. Например:Представленные данные ширины pIxel для каждого символа в шрифте браузера
a_really_long_string_of_text_like_this_with_no_line_breaks_makes_the_table_unhappy
Я хотел бы, чтобы вычислить ширину текста на стороне сервера и добавить многоточие после правильного количества символов. Проблема в том, что у меня нет данных об отображаемом размере текста.
Например, предположим, что браузер был Firefox 3, а шрифт был 12px Arial. Какова ширина буквы «a», ширина буквы «b» и т. Д.?
Есть ли у вас данные, показывающие ширину пикселя каждого символа? Или программа для ее создания?
Я думаю, что умный одноразовый скрипт javascript мог бы сделать трюк. Но я не хочу тратить время на повторное изобретательство колеса, если кто-то еще это сделал. Я, конечно, не первый человек, который решил эту проблему.
Это полезное решение, потому что оно не разбивает стол.Но это не показывает многоточие. – Devon 2008-10-02 15:15:44
Это действительно нелегко. Лучшее, что я могу придумать, - это небольшая функция JS, которая будет отображать многоточие в новом элементе, добавить копию в каждую ячейку и показать/скрыть их в зависимости от scrollWidth/clientWidth каждого. – Dan 2008-10-02 15:37:28
.. но это решение потребует привязки событий к onload, onresize и всего остального, что может повлиять на отображение таблицы, что очень тяжело для браузера, поэтому я бы не рекомендовал его. – Dan 2008-10-02 15:38:21