Forum Webscript.Ru

Программирование => PHP => Тема начата: Reindjer от 02 Ноября 2006, 16:19:40

Название: Обрезание строки с неизвестным кол-м символов
Отправлено: Reindjer от 02 Ноября 2006, 16:19:40
Эхх... тут озадачился на днях проблемой одной.
Значит есть у меня html таблица размерами width=200 и height=80. Это новостной блок, точнее только заголовок новости.
Заголовки новостей я парсирую с другого сайта средствами xm_parse_in_struct (парсинг в массив).
Из php я через echo размещаю парсированный заголовок новости в мой маленький блок, НО...

так как блок достаточно маленький (4 строки текста и в каждой строке по 25-35 символов), проблема возникает когда заголовок новости больше чем этот блок, то есть надо его как то урезать... то есть кол-во символов в новости больше допустим 90 символов то обрезаем и добавляем в конец строки троеточие. вроде бы просто, НО количество символов из-за различного размера отдельных букв очень часто разное... то есть вчера новость была 60 символов, сегодня 110 символов, а завтра она будет 90 символов... так как тогда обрезать строку???
Название: Обрезание строки с неизвестным кол-м символов
Отправлено: CGVictor от 02 Ноября 2006, 16:31:56
Reindjer
Выводом. CSS overflow:hidden.
Название: Обрезание строки с неизвестным кол-м символов
Отправлено: Reindjer от 02 Ноября 2006, 16:38:31
ээ... в смысле это свойство над придать таблице да? можно пожалуста поподробней?  и кстати если прочитать из названия свойства проблему она мою не решит... я хочу чтобы именно в конце строки было троеточие, если строка длиннее чем мой блок
Название: Обрезание строки с неизвестным кол-м символов
Отправлено: Reindjer от 02 Ноября 2006, 17:06:35
нужен название моноширинный шрифт, не знаете?
Название: Обрезание строки с неизвестным кол-м символов
Отправлено: CGVictor от 03 Ноября 2006, 10:31:17
Reindjer
Моноширинный шрифт называется (сюрприз!) monospace.

Речь о том, что ширину символов (если они не monospace) ты на сервере просто и легко никак не определишь (способы есть, но это из пушки по воробьям).
Поэтому: обрезаешь у себя до троеточия, можно с запасом, а в дополнение ставишь блоку вывода указанное css-свойство - для того, чтобы при переполнении блок не "распирался", а просто скрывал избыточные символы. Вариант.