it-swarm.com.ru

Создание ширины таблицы td fill

У меня есть таблица с фиксированной высотой 50px и шириной 100%.

Внутри этой таблицы у меня есть два div, на одной строке, вот так:

<table>
  <tr>
    <td>
      <div id="1"></div>
    </td>
    <td>
      <div id="2"></div>
    </td>
  </tr>
</table>

Первый div имеет float:left, а второй float:right.

Таким образом, таблица занимает 100% страницы. Я хочу, чтобы div2 обернул его содержимое, а div1 заполнил оставшееся пространство так, чтобы div2 выровнялся вправо следующим образом:

+--------------------------------------------------------------+
| [ DIV 1          (Expands)       ][ DIV 2 AND ITS CONTENTS ] |
+--------------------------------------------------------------+

и что я в настоящее время получаю, когда div1 имеет меньше содержимого, чем полная строка:

+--------------------------------------------------------------+
| [ DIV 1 ][ DIV 2 ]                                           |
+--------------------------------------------------------------+

Без стола я могу заставить его работать плавающим влево и вправо напрямую, но затем, когда они «соберутся», они будут оборачиваться друг под другом, а не рядом друг с другом.

Правка: я добавил новый jsfiddle здесь . Это рабочий пример . Попробуйте удалить все, кроме одной ссылки из левого div и посмотреть результат. Второе деление должно остаться в самом правом. Я надеюсь, что я объяснил себе.

14
Twinone

Решено добавить width:100% в таблицу.

http://jsfiddle.net/HRT5E/1/

table {
    width:100%;
}
16
Twinone

Используйте свойство «colspan» тд. Пример:

    <td colspan=75%> info </td>
29
tymeJV

Во-первых, ваша таблица вообще не настроена на всю ширину страницы. Вы хотите добавить стиль ширины или атрибут ширины в разметку.

Затем просто установите фиксированную ширину справа "div" (или, точнее, <TD>), и первый заполнит оставшееся пространство.

Как уже отмечали другие, таблица-обертка кажется ненужной.

0
JohnFx