Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > Таблица с нижней строкой фиксированной высоты


Автор: teroni 29.9.2008, 23:23
Есть такая вот табличка:
Код

<table width="100%" border="1">
   <tr>
      <td width="50%" rowspan="2">[menu]<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />[menu]
      </td>
      <td width="50%">[content]</td>
   </tr>
   <tr>
      <td>(c)2008</td>
   </tr>
</table>

Как сделать, чтобы ячейка с ©2008 была по высоте допустим 20 пикселов, а всё остальное место по высоте занимала ячейка, в которой [content]?

Автор: doook 30.9.2008, 14:14
Код

<table height="100%" width="100%"  border="1">
   <tr>
      <td width="20%"  rowspan="2">[menu]<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />[menu]
      </td>
      <td width="80%"><div height="100%">[content]<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />[content]</div></td>
   </tr>
   <tr width="80%">
   <td height="20">(c)2008</td>
   </tr>
</table>


Автор: teroni 30.9.2008, 14:21
Неа, это не правильный ответ...
Я не могу добавлять в [content] кучу <br />.
А если их убрать из предложенного варианта, то в ФФ будет действительно нижняя полоска 20 пискелов, в опере - высота [content]  = высоте нижней полоски, в Аванте (наверное  и в ИЕ) - ячейка с [content] - узкая, всё остальное место - на ©2008.

Автор: SelenIT 30.9.2008, 22:50
К сожалению, в IE<8 (и всех его производных - MyIE/Maxthon, упомянутый Avant etc.) такое возможно только в Quirks mode (почему - сам Гейтс не знает). Так что варианты - или убирать доктайп и править все стили для IE под Quirks mode (благо их легко отделить условными комментами), или оставить в таблице одну строку (для контента), задать ее ячейкам нижний padding на высоту копирайта, а сам копирайт наложить поверх него отдельным div-ом (c помощью абс. позиционирования или отриц. margin-ов)...

Автор: teroni 1.10.2008, 00:14
Да я с помощью div-ов тоже делал. Неужели просто таблицами никак без уборки доктайпа нельзя?
А внешне всё казалось так просто smile

Автор: SelenIT 1.10.2008, 00:17
Цитата(teroni @  1.10.2008,  00:14 Найти цитируемый пост)
Неужели просто таблицами никак без уборки доктайпа нельзя?

Еще вариант (наверное, самый простой) - таблица (или див) фиксированной высоты, вложенная в нижнюю ячейку. Других вариантов я не знаю. Таков уж IE...

Автор: teroni 1.10.2008, 00:34
Спасибо. Такой вариант работает так, как я хотел в вышеперечисленных браузерах:
Код

<table style="width:100%">
   <tr>
      <td width="20%"  rowspan="2">[menu]<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />[menu]
      </td>
      <td width="80%" valign="top">[content]</td>
   </tr>
   <tr width="80%">
      <td valign="bottom">
         <table style="height:20px; width:100%">
            <tr>
               <td>(c)2008</td>
            </tr>
         </table>
      </td>
   </tr>
</table>

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)