Вёрстка « position: absolute в TD

Как можно в TD абсолютно спозиционировать блок, если браузер работает в standard complaint mode?
Или же как в TD можно растянуть div на 100% высоты (что, в принципе, равнозначно)

1 ответов


Для табличных элементов в стандарте CSS не предусмотрено позиционирование.
Див будет растягиваться по высоте только если указать высоту родительской ячейки в "px".

Т.е. если у вас непостоянная высота ячейки, придётся пользоваться нестандартными методами:
1. Используйте JS для определения высоты ячейки, а затем передавайте координаты нижней границы плавающему элементу.
2. Если ячейка последняя или единственная в таблице - разместите под ней блок с относительным позиционированием, вложите в него абсолютно позиционированный блок и задайте последнему отрицательное смещение вверх:


<table>
  <tr>
    <td></td>
  </tr>
</table>
<div style="position:relative">
  <div style="position:absolute; top: -20px;"></div>
</div>
 

3. Вложите в относительно позиционируемый блок на ячейку ниже:

<table>
  <tr>
    <td></td>
  </tr><tr>
    <td>
      <div style="position:relative">
        <div style="position:absolute; top: -20px;"></div>
      </div>
    </td>
  </tr>
</table>
 

может как вариант
положить в ячейку div задать ему position:relative а относительно него уже позиционировать абсолютный, или можно попробовать задать position:relative для ячейки.


Попробуйте ячейке задать position:relative, а div'у — absolute; все остальное как у вас по ссылке.


вот тут ответ http://kgeu-help.ru/books/