|
|
|
| в таблицу вставляю данные из БД ... как сделать, что бы таблица не изменяла размер, даже, если текста больше, чем может уместиться? лучше что бы текст обрезался... | |
|
|
|
|
|
|
|
для: Mootch
(25.08.2005 в 20:31)
| | Нужно воспользоваться 'nowrap'.
Да, и еще задать размер таблицы и ее ячеек. Лучше в пикселях, для вашего случая. | |
|
|
|
|
|
|
|
для: codexomega
(25.08.2005 в 21:19)
| | nowrap - вообще нето ... строки вообще не переносятся
сорри .. надо в пикселях указывать длинну ... а я в процентах....
Все равно не помогает .... никак не могу добиться того, чего хочу ....
Если СЛОВО (т.е. что-то написанное без пробелов) по длинне больше длинны строки, то оно растягивает таблицу .... я указывал размеры, все равно растягивает :(( | |
|
|
|
|
|
|
|
для: Mootch
(25.08.2005 в 22:15)
| | Обрезай текст при помощи php. Например по 100 символов. | |
|
|
|
|
|
|
|
для: Евгений Петров
(25.08.2005 в 22:22)
| | >Обрезай текст при помощи php. Например по 100 символов.
Спасибо! А как сделать, что бы сплошной текст , например, "11111111111111111111111111111111111 11111" переносился на след строчку? а не растягивал таблицу? | |
|
|
|
|
|
|
|
для: Mootch
(25.08.2005 в 22:51)
| | Проверяй, если слово больше n символов - обрезай или переноси на др. строку. | |
|
|
|
|
|
|
|
для: Mootch
(25.08.2005 в 22:51)
| | Пользуйся OPERA 8 =))
В ней есть кнопочка "по ширине окна".... Нажимаешь, и опера сама все перенесет =)) Гы =)) | |
|
|
|
|
|
|
|
|
для: Mootch
(25.08.2005 в 20:31)
| | Думаю, надо так.
1) Берем первые 50 символов.
2) Проверяем 51-й. Если это пробел, то стоп, иначе дальше.
3) Удлиняем "вырезку" до тех пор, пока не встретим пробел.
4) Проверяем, какой длины получилась строка. Если меньше 100, то стоп, иначе дальше.
5) Проверяем. есть ли вообще пробелы в том. что получили. Если нет, тупо режем пополам, иначе дальше.
6) Повторяем пп. 1-4 для первых 30 символов.
Все сказанное хорошо укладывается в рекурсивную функцию. Первые три пункта:
function first_words($text, $end_point)
{
if ($end_point >= strlen($text)) return $text;
while (true)
{
$tmp_text=substr($text, 0, $end_point+1);
if ($tmp_text[$end_point] != ' ')
$end_point++;
else
break;
if ($end_point == strlen($text)) return $text;
}
return $tmp_text.' ...';
}
|
Думаю, рекурсию дописать уже не трудно. | |
|
|
|
|
|
|
|
для: Киналь
(25.08.2005 в 23:38)
| | Можно просто в css указать
style="word-break: break-all;"
или
word-wrap: break-word;
|
| |
|
|
|
|
|
|
|
для: sancho
(26.08.2005 в 09:13)
| | >Можно просто в css указать
>
>style="word-break: break-all;"
>или
>word-wrap: break-word;
>
|
к какому эффекту это приведет? Строки не переносятся и не обрезаются ....по крайней мере внутри таблицы | |
|
|
|
|
|
|
|
для: Mootch
(26.08.2005 в 17:40)
| | Строки переносятся, задали например ширину 200 px, она и будет 200 px, будет высота только меняться | |
|
|
|
|
|
|
|
для: sancho
(26.08.2005 в 17:50)
| | >Строки переносятся, задали например ширину 200 px, она и
>будет 200 px, будет высота только меняться
<td width=100 STYLE=\"font-size:12px;word-wrap:break-word; width:100;\">".$a_row[info]."</td>
|
не переносит! :(
В ИЕ все ок, а в Опере не переносится :( | |
|
|
|
|
|
|
|
для: Mootch
(26.08.2005 в 18:00)
| | В опере не переносит, это верно, у самого такая же проблема, по ходу только рег. выражение остается | |
|
|
|