Таблица, вылизание за край
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 06.08.02 11:51
Оценка:
Делаю HTML-ную таблицу шириной в экран, но проблема в том, что если в ячейку вставить длинное слово, то оно не переносится и таблица уезжает за правый край.

Как решить данную проблему? Надо, чтобы таблица была равне ширине экрана и слова переносились.


<table border='1' width='100%'>
  <tr>
 <td>asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
 <td>asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
 </tr>
</table>
Re: Таблица, вылизание за край
От: Rumata Россия http://atamur.livejournal.com
Дата: 06.08.02 11:55
Оценка:
Здравствуйте DarkGray, Вы писали:

DG>Делаю HTML-ную таблицу шириной в экран, но проблема в том, что если в ячейку вставить длинное слово, то оно не переносится и таблица уезжает за правый край.


DG>Как решить данную проблему? Надо, чтобы таблица была равне ширине экрана и слова переносились.


Я видел использование такого regexp'а:

[php]
preg_replace("/([^\n\r ?&\.\/<>\"\\-]{".$wordwrap."})/i"," \\1\n",$text);

$wordwrap — количество символов, после которого в слове ставить принудительный пробел, $text — текст

Но как это выраждение работает, так и не понял =(
Re[2]: Таблица, вылизание за край
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 06.08.02 12:01
Оценка:
Здравствуйте Rumata, Вы писали:

R>Я видел использование такого regexp'а:


То есть, единственное решение — "руками" на сервере в длинные слова вставлять мягкие переносы?
Re[3]: Таблица, вылизание за край
От: Rumata Россия http://atamur.livejournal.com
Дата: 06.08.02 12:28
Оценка:
Здравствуйте DarkGray, Вы писали:

DG>То есть, единственное решение — "руками" на сервере в длинные слова вставлять мягкие переносы?

afaik да
Re[3]: Таблица, вылизание за край
От: solos Украина www.belton.com.ua
Дата: 06.08.02 12:30
Оценка:
Здравствуйте DarkGray, Вы писали:

DG>Здравствуйте Rumata, Вы писали:


R>>Я видел использование такого regexp'а:


DG>То есть, единственное решение — "руками" на сервере в длинные слова вставлять мягкие переносы?


а как ты задаешь ширину таблицы. Просто возможен вариант, когда ширина таблицы задана, однако в содержимом ячеек используется CSS со свойством width или text-width, которые и перекрывают "родную" ширину страницы
WBR, solos.
Re[4]: Таблица, вылизание за край
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 06.08.02 12:36
Оценка:
Здравствуйте solos, Вы писали:

S>а как ты задаешь ширину таблицы.


width='100%'

Я же привел (в первом сообщении) пример html-кода, который работает не так, как я хочу.

И мне интересно, что в него надо добавить, чтобы он выводился правильно (не вылезал за правую границу браузера).

S>Просто возможен вариант, когда ширина таблицы задана, однако в содержимом ячеек используется CSS со свойством width или text-width, которые и перекрывают "родную" ширину страницы


В примере (из первого письма) нету никакого CSS, а он все равно вылезает.
Re[5]: Таблица, вылизание за край
От: solos Украина www.belton.com.ua
Дата: 06.08.02 12:53
Оценка:
Здравствуйте DarkGray, Вы писали:

DG>Здравствуйте solos, Вы писали:


S>>а как ты задаешь ширину таблицы.


DG>width='100%'


DG>Я же привел (в первом сообщении) пример html-кода, который работает не так, как я хочу.


DG>И мне интересно, что в него надо добавить, чтобы он выводился правильно (не вылезал за правую границу браузера).


S>>Просто возможен вариант, когда ширина таблицы задана, однако в содержимом ячеек используется CSS со свойством width или text-width, которые и перекрывают "родную" ширину страницы


DG>В примере (из первого письма) нету никакого CSS, а он все равно вылезает.


попробуй что-то типа
<table ...  style="text-width:800px">

или
<table ... style="width:800px">

Именно в пикселях, так что придется без процентов !!!
WBR, solos.
Re[6]: Таблица, вылизание за край
От: DarkGray Россия http://blog.metatech.ru/post/ogni-razrabotki.aspx
Дата: 06.08.02 13:03
Оценка:
Здравствуйте solos, Вы писали:

S> Именно в пикселях, так что придется без процентов !!!


Не помогает.
Re: Таблица, вылизание за край
От: Konstantin Sokolovskiy  
Дата: 06.08.02 15:29
Оценка:
Здравствуйте DarkGray, Вы писали:

DG>Делаю HTML-ную таблицу шириной в экран, но проблема в том, что если в ячейку вставить длинное слово, то оно не переносится и таблица уезжает за правый край.


DG>Как решить данную проблему? Надо, чтобы таблица была равне ширине экрана и слова переносились.


Если допускается обрезание непомещающегося текста, то используй style="table-layout:fixed" для таблицы.
Если же текст не должен обрезаться, то только вставкой пробелов на серверной или клиентской стороне.
Re[7]: Таблица, вылизание за край
От: alsun  
Дата: 06.08.02 15:38
Оценка:
Здравствуйте DarkGray, Вы писали:

DG>Здравствуйте solos, Вы писали:


S>> Именно в пикселях, так что придется без процентов !!!


DG>Не помогает.



если пробелов нет, то это одно слово и переноситься само по себе оно наверное не будет, т.е надо принудутельно вставлять переносы...
если текст берется не из готовой таблицы, а набирается вручную, то можно вставлять теги типа <wbr> в местах, где можно делать перенос (в случае необходимости)

<table border='1' width='100%'>
<tr>
<td>asdjfhsldakhfhsdhfksdfsj<wbr>dhfsjdhflsjdhfshdfsdf<wbr>ffffffffffffffffffffff<wbr>ffffffffffffff<wbr>fffffffffffffff<wbr>ffffffffffffff<wbr>qwwwwwwwwwwwwwwwwww<wbr>wwwwwww</td>
<td>asdjfhsldakhfhsd<wbr>hfksdfsjdhfsjdhflsjdh<wbr>fshdfsdffffffffffffff<wbr>fffffffffffffffffffff<wbr>fffffffffffff<wbr>ffffffffffffffff<wbr>ffqwwwwwwwwwwww<wbr>wwwwwwwwwwwww</td>
</tr>
</table>
Re[2]: Таблица, вылизание за край
От: TK Лес кывт.рф
Дата: 06.08.02 15:45
Оценка: 22 (4)
Здравствуйте Konstantin Sokolovskiy, Вы писали:

KS>Здравствуйте DarkGray, Вы писали:


DG>>Делаю HTML-ную таблицу шириной в экран, но проблема в том, что если в ячейку вставить длинное слово, то оно не переносится и таблица уезжает за правый край.


DG>>Как решить данную проблему? Надо, чтобы таблица была равне ширине экрана и слова переносились.


KS>Если допускается обрезание непомещающегося текста, то используй style="table-layout:fixed" для таблицы.

KS>Если же текст не должен обрезаться, то только вставкой пробелов на серверной или клиентской стороне.

Не обязательно.
<table border="1" width="100%" ID="Table1" style="table-layout: fixed">
<tr>
<td style="word-wrap:break-word;">asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
<td  style="word-wrap:break-word;">asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
</tr>
</table>
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re[8]: Таблица, вылизание за край
От: Lloyd Россия  
Дата: 06.08.02 15:46
Оценка:
Здравствуйте alsun, Вы писали:

A>Здравствуйте DarkGray, Вы писали:


DG>>Здравствуйте solos, Вы писали:


S>>> Именно в пикселях, так что придется без процентов !!!


DG>>Не помогает.



A>если пробелов нет, то это одно слово и переноситься само по себе оно наверное не будет, т.е надо принудутельно вставлять переносы...

A>если текст берется не из готовой таблицы, а набирается вручную, то можно вставлять теги типа <wbr> в местах, где можно делать перенос (в случае необходимости)

A><table border='1' width='100%'>

A><tr>
A><td>asdjfhsldakhfhsdhfksdfsj<wbr>dhfsjdhflsjdhfshdfsdf<wbr>ffffffffffffffffffffff<wbr>ffffffffffffff<wbr>fffffffffffffff<wbr>ffffffffffffff<wbr>qwwwwwwwwwwwwwwwwww<wbr>wwwwwww</td>
A><td>asdjfhsldakhfhsd<wbr>hfksdfsjdhfsjdhflsjdh<wbr>fshdfsdffffffffffffff<wbr>fffffffffffffffffffff<wbr>fffffffffffff<wbr>ffffffffffffffff<wbr>ffqwwwwwwwwwwww<wbr>wwwwwwwwwwwww</td>
A></tr>
A></table>

Нет такого элемента в html.
Re[3]: Таблица, вылизание за край
От: Konstantin Sokolovskiy  
Дата: 06.08.02 15:47
Оценка:
Здравствуйте TK, Вы писали:

TK>Не обязательно.


Спасибо, буду знать...
Re[9]: Таблица, вылизание за край
От: alsun  
Дата: 09.08.02 08:35
Оценка:
Здравствуйте Lloyd, Вы писали:


L>Нет такого элемента в html.



...данный элемент поддерживается броузерами Netscape и Microsoft, хотя он и не входит в стандарт HTML...
...совместимость: Netscape 1.1, 2.x, 3.x, 4.x; IE 2.x, 3.x, 4.x...

Не стану спорить о пользе стандартов, но другого подходяцего тега в стандартном HTML, увы, не предусмотрено.
Re: Таблица, вылизание за край
От: Ose  
Дата: 09.08.02 14:44
Оценка:
Здравствуйте DarkGray, Вы писали:

DG>Делаю HTML-ную таблицу шириной в экран, но проблема в том, что если в ячейку вставить длинное слово, то оно не переносится и таблица уезжает за правый край.


DG>Как решить данную проблему? Надо, чтобы таблица была равне ширине экрана и слова переносились.



DG>
DG><table border='1' width='100%'>
DG>  <tr>
DG> <td>asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
DG> <td>asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
DG> </tr>
DG></table>
DG>


Я думаю, что кроме как вставлять пробелы сделать больше нечего не получиться. Хотя для того,
чтобы таблица не вылазела за пределы браузера попробуй вставить стиль (style="table-layout:fixed;")
Re[2]: Таблица, вылизание за край
От: Rumata Россия http://atamur.livejournal.com
Дата: 09.08.02 18:56
Оценка:
Здравствуйте Ose, Вы писали:

Ose>Я думаю, что кроме как вставлять пробелы сделать больше нечего не получиться. Хотя для того,

Ose>чтобы таблица не вылазела за пределы браузера попробуй вставить стиль (style="table-layout:fixed;")
Чуть выше по теме написано, как решить эту проблему: style="word-wrap:break-word;". Читайте внимательнее!
Re[3]: Таблица, вылизание за край
От: VictorT Украина http://extreme.lviv.ua/
Дата: 27.01.04 17:21
Оценка:
TK>Не обязательно.
TK>
TK><table border="1" width="100%" ID="Table1" style="table-layout: fixed">
TK><tr>
TK><td style="word-wrap:break-word;">asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
TK><td  style="word-wrap:break-word;">asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
TK></tr>
TK></table>
TK>


А работает только под ИЕ
Re[3]: Таблица, вылизание за край
От: marx paul Германия Провести онлайн-опрос
Дата: 27.01.04 21:18
Оценка:
Здравствуйте, TK, Вы писали:

TK>Не обязательно.

TK>
TK><table border="1" width="100%" ID="Table1" style="table-layout: fixed">
TK><tr>
TK><td style="word-wrap:break-word;">asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
TK><td  style="word-wrap:break-word;">asdjfhsldakhfhsdhfksdfsjdhfsjdhflsjdhfshdfsdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffqwwwwwwwwwwwwwwwwwwwwwwwww</td>
TK></tr>
TK></table>
TK>


однако катит только для эксплорера...

Или word-wrap уже в стандартизироано в W3C -> CSS ?
Провести онлайн-опрос
Online-Umfrage erstellen
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.