Показать полную графическую версию : про таблицу
У меня такая проблема.
есть таблица длиной 400пх, если в неё(через textarea) вписываю
безраздельно "АААА" - 200 раз, то она растягивается и теряется
весь вид, я так не хочу. Что мне можно сделать?
Всё достаточно просто! нужно установить фиксированную длину строки текствого поля!
vadimiron
10-07-2005, 13:24
slaine
Сори, я не понял
если в неё(через textarea) вписываю
то есть есть какой то скрипт, который текст из textarea вписывает в ячейку таблицы, или сама textarea находится в ячейке таблицы???
Во втором случае вроде ничего не должно "раздуваться", если заданы чётко параметры rows и cols
Для первого случая можно так сделать (В ИЕ точно работает):
<table>
<tr>
<td STYLE="word-wrap:break-word;width:15;">ddddddddddddddddddddddddddddddddddddddddddddddddddd</td>
</tr>
</table>
Здесь главное, чтобы оба параметра были вместе заданы: word-wrap и width
Вот тут я написал, чтоб было понятнее.
Хотелось бы чтоб строчка обрубалась и нераздувала таблицу.
Как можно это сделать?
<?
if (isset($_POST['name'])){
$name = $_POST['name'];
$f1 = fopen("aaa.txt", "w");
fwrite($f1, $name);
fclose($f1);
$f2 = fopen("aaa.txt", "r");
$a = fread($f2, 1024);
fclose($f2);
echo "<table border=1 width=200 height=100>";
echo "<tr valign=top>";
echo "<td STYLE='word-wrap: break-word; width: 200'>";
echo "<P align=justify>".$a."</P></td>";
echo "</tr>";
echo "</table>";
}
?>
<form action=pet.php method=post>
<textarea cols=35 rows=8 name=name></textarea><BR>
<input type="submit">
</form>
Я я вижу только один вариант, слова которые например длинее 50 символов обрубать пробелом,
как мне это сделать???
Вот нашёл в интернете -
$name = wordwrap($name, 40," ",1);
Только непойму, что значит четвёртый параметр,
slaine
Вот нашёл в интернете -
олько непойму, что значит четвёртый параметр,
А искать сразу в официальной документации по php - не судьба? :o
Так вот, по адресу http://ru3.php.net/manual/ru/function.wordwrap.php можете прочитать:
string wordwrap ( string str [, int width [, string break [, boolean cut]]] )
Возвращает строку str с переносом в столбце с номером, заданном аргументом width. Строка разбивется с помощью аргумента break.
Аргументы width и break необязательны и по умолчанию равны 75 и '\n' соответственно.
Если аргумент cut установлен в 1, разрыв делается точно в заданной колонке. Поэтому если исходная строка содержит слово длиннее, чем заданная длина, то в этом случае слово будет разорвано.
На нашем форуме обсуждались детали и фокусы с обрубанием длинных строк и форматированием текста. Посмотрите темы:
"Форматирование текста" (http://www.forum.oszone.net/showthread.php?t=30951&highlight=wordwrap)
"Пользовательский ввод - не позволить рвать страничку." (http://forum.oszone.net/topic.cgi?forum=20&topic=1117)
mar
книгой которой я пользовался в wordwrap было всего 3 параметра.
Вот я и недумал искать в официальной документации по php.
slaine
извини :) Если так, то все понятно (книга просто в этом вопросе чуть устарела): дело в том, что четвертый необязательный аргумент cut был добавлен в PHP 4.0.3. Так что документацией с http://php.net тем более стоит пользоваться - она там всегда охватывает все нововведения.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.