Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Сокрытие невлезающего текста
 
 автор: devil943   (01.03.2009 в 16:26)   письмо автору
 
 

Придумал вот такую вещь:
<div style="width:50%"> 
    <div style="width:100%; overflow:hidden;"> 
        <div style="width:1000px;"> 
             dfdfdh fsd jfnsfsfnsjsf jsefsd  sdfjsdf fd
 fsdfjsdf sdfs sdfjsf sdf sdfsdfsdjfjsd f  sdfsdjf sdifshf 
d djfsdjfgh dsfhsdhfhsdfhsi   sdfsdfhsdf sdfhsdn 
hsdfhutweys euyfuisdyff efsdfgsfgsdfsfs  ssfsfs dfsfsdhty 
yjuy kdfsertgvdfvd
        </div> 
    </div> 
</div> 

Суть в том, что сжатии окна браузера, "лишний" текст пропадает, это бывает очень удобно, особенно в таблицах с большим количеством столбцов.
Но Такой финт не работает (у меня) в таблицах:
Например:

<table width="100%">
  <tr>
    <td width="20%">Заголовок столбца 1</td>
    <td>Заголовок столбца 2 (растягивает столбец на 80%)</td>
  </tr>
  <tr>
    <td>Значение 1</td>
    <td>

Указываем блок, который замет 100% ширины ячейки (т.е. 80% от ширины таблицы) и цказываем, что все, что в него по ширине не влезет - обрубается.

      <div style="width: 100%;overflow:hidden">

Создаем div, которому указываем ОЧЕНЬ большую ширину, что бы текст, помещенный в нем точно занят бы эту ширину и не полез бы на следующую строку

        <div style="width: 1000px;">Значение 1</div>
      </div>
    </td>
  </tr>
</table>

Итог: не работает :( Хотя вроде логика правильная. В чем может быть дело?

  Ответить  
 
 автор: Lelik   (01.03.2009 в 21:52)   письмо автору
 
   для: devil943   (01.03.2009 в 16:26)
 

таблице задать стиль:

table-layout: fixed

  Ответить  
 
 автор: devil943   (01.03.2009 в 23:50)   письмо автору
 
   для: Lelik   (01.03.2009 в 21:52)
 

Так не пойдет. Во-первых в некоторых браузерах содержимое ячейки будет не обрезаться, а вылезать за пределы ячейки.
Ну а во во-вторых интересно почему мой пример не работает, как положено...

  Ответить  
 
 автор: Lelik   (02.03.2009 в 10:08)   письмо автору
 
   для: devil943   (01.03.2009 в 23:50)
 

а што мешает для ячейки таблицы задать overflow:hidden ?

  Ответить  
 
 автор: mihdan   (02.03.2009 в 13:25)   письмо автору
 
   для: Lelik   (02.03.2009 в 10:08)
 

Сами то пробовали?

PS: Свойство overflow управляет отображением содержания блочного элемента, если оно целиком не помещается и выходит за область заданных размеров.

  Ответить  
 
 автор: Lelik   (02.03.2009 в 16:25)   письмо автору
 
   для: mihdan   (02.03.2009 в 13:25)
 

конечно пробывал, вы бы поменьше читали всякого такого, а ещё, например в ИЕ ячейки таблиц — это блочные элементы ;)

  Ответить  
 
 автор: devil943   (02.03.2009 в 16:39)   письмо автору
 
   для: Lelik   (02.03.2009 в 10:08)
 

Ширина ячейки явно не задана, она наследуется от ячейки в первой строке (и то не везде, т.к ячейки в одном столбце берут оставшуюся ширину таблицы), overfloaw на нее не распространяется (а жаль).

  Ответить  
 
 автор: Lelik   (02.03.2009 в 16:52)   письмо автору
 
   для: devil943   (02.03.2009 в 16:39)
 

"Ширина ячейки явно не задана"
я же говорил, задай таблице в которой эта ячейка стиль table-layout:fixed;

  Ответить  
 
 автор: devil943   (02.03.2009 в 16:58)   письмо автору
 
   для: Lelik   (02.03.2009 в 16:52)
 

table-layout:fixed; подразумевает использование таких вещей, как <cols>, в которых задается ширина ячеек. В моем случае это недопустимо, т.к страница формируется динамически, <cols> не предусмотрены. + Свойство дает не тот результат, который требуется - если значение не поместится я ячейку, оно не пропадет (т.е другая ячейка его не "накроет"), а оно просто вылезет за границу текущей ячейки.

  Ответить  
 
 автор: Lelik   (02.03.2009 в 17:35)   письмо автору
 
   для: devil943   (02.03.2009 в 16:58)
 

откудаго такая информация, что надо использовать <cols> О_о ?
ЗЫ. а для ячейки при этом стиле таблицы задать overflow: hidden;

  Ответить  
 
 автор: devil943   (02.03.2009 в 17:39)   письмо автору
 
   для: Lelik   (02.03.2009 в 17:35)
 

Открой браузер и проверь (во всяком chrome не берет ширину из первой строки).
В спецификации так: тег <col>, атрибуты span и width.

  Ответить  
 
 автор: Lelik   (02.03.2009 в 18:33)   письмо автору
 
   для: devil943   (02.03.2009 в 17:39)
 

странно, я использую именно такие стили и у меня всё работает.
на спецификацию, особенно которая говорит, что есть атрибут span, можно смело положить.

  Ответить  
 
 автор: devil943   (02.03.2009 в 19:49)   письмо автору
 
   для: Lelik   (02.03.2009 в 18:33)
 

И тем не менее с <col> работает и атрибут span есть. Если вы не согласны, прошу код сюда выложить.

PS без обид, но мне интересно решить проблему, а не слушать бред, про отсутствие атрибутов span/
Если вас интересуют фактические доказательства, то вам ссылка - http://www.htmlbook.ru/css/table-layout.html, первая строчка в google

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования