Стол не подчиняется модели коробки W3C, Ie8 игнорирует фиксированную ширину стола! - PullRequest
0 голосов
/ 12 апреля 2010

У меня проблемы с таблицами и шириной столбцов.

Обновление: я использую XHTML Strict 1.0.

Страница: http://www.pro -turk.net / try

Первая проблема, с которой я столкнулся, это то, что у меня есть столбец с фиксированной шириной 100px и 4px padding, но он не подчиняется моему padding в зависимости от значения. Ширина столбца (как расстояние между двумя границами в соответствии с блочной моделью W3C) составляет 156 пикселей, даже если отступ равен 0 или 4. Изменяется только положение текста.

Согласно W3C Box Model (доступна на www.pro-turk.net/box_model.png), границы и отступы не включены в атрибут WIDTH, так почему он отображается неправильно?

Вторая проблема, когда вы смотрите страницу, которую я дал с IE8, первая ячейка во второй строке имеет фиксированную ширину 150px, то есть показывает, что она составляет около 50% общей ширины таблицы независимо от того, что я говорю. *

1 Ответ

1 голос
/ 12 апреля 2010

Вы используете по умолчанию auto режим макета таблицы . Это позволяет браузеру довольно произвольно решать, сколько места выделять для каждого столбца, обычно в зависимости от объема реального содержимого в ячейках. В этом режиме width немного больше, чем рекомендация.

Если вы хотите, чтобы браузер воспринимал ширину столбцов серьезно, вам следует установить table-layout: fixed для элемента <table> и либо включить элементы <col/> с явной шириной, либо установить ширину для ячеек в первой строке, чтобы столбцы, которые вы хотите быть фиксированной ширины. (Остальные столбцы будут разделять оставшуюся ширину одинаково.) fixed макет таблицы также позволяет браузеру рендериться быстрее.

Для вашей страницы вам может быть лучше с позиционированием CSS. Конечно, для внутренней таблицы, которая, кажется, существует только для плавающего левого изображения. Вложенных таблиц следует избегать.

...