Как выровнять по левому краю все ячейки таблицы, кроме последней? - PullRequest
1 голос
/ 19 февраля 2010

У меня есть таблица с 1 строкой и 5 столбцами. Я установил ширину этих 5 столбцов для определенных известных значений (150px, 200px и т. Д.). Я также установил левое поле для каждого.

Я хочу, чтобы таблица расширялась и занимала всю ширину своего родителя. Итак, я установил его ширину 100% . Когда таблица шире, чем объединенная ширина и поля 5 столбцов, это приводит к тому, что они растекаются по таблице, оставляя промежутки между ними.

Но я хочу, чтобы эти 5 столбцов остались слева.

Для этого я добавил 6-й столбец и установил его ширину auto , надеясь, что он правильно сдвинет первые 5 влево и займет оставшееся пространство. Работает в Firefox и Chrome. Но это не работает в IE. В IE 5 столбцов по-прежнему располагаются равномерно по всей таблице.

Я попытался установить ширину 6-го столбца на 100% вместо автоматического. Но проблема в том, что он уничтожает левые поля 5 столбцов! Вроде как, столбец 100% слишком сильно сдвигает 5 столбцов влево, чтобы их поля исчезли!

Я хочу, чтобы отступы, поля и ширина первых 5 столбцов были сохранены, но сдвинуты влево, но таблица должна расшириться до ширины своего родителя.

В таблице есть фоновое изображение, которое должно отображаться за пределами 5 столбцов.

Некоторые могут предложить мне перенести фон на родительский стол таблицы, но я не могу - поверьте мне на слово: D

Как мне заставить это работать в Firefox, Chrome и IE?

Спасибо.

Вот ссылка: http://test.greedge.com/table/table.php. Попробуйте в FF и IE

1 Ответ

1 голос
/ 19 февраля 2010

Редактировать: Решение простое: добавить   к одному тд в таблице в последнем столбце. Ячейка таблицы входящей таблицы не отображается, потому что она ничего не содержит. Таким образом, последняя ячейка также ничего не содержит, не визуализируется, а другие ячейки должны разделить доступное пространство между ними.

Я не знаю, какой браузер здесь работает правильно, все IE (включая 8) не отображают столбец, все другие браузеры делают.

Старый ответ:

Столбцы не должны иметь полей в соответствии с спецификацией CSS 2.1 :

поле справа, поле слева

Относится к: всем элементам, кроме элементов с типами отображения таблицы, кроме table-caption, table и inline-table

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...