Высота

После всех этих усилий, затраченных на определение ширины таблицы, вы, вероятно, задаетесь вопросом, насколько же более сложным будет вычисление высоты. На самом деле с точки зрения CSS все совершенно просто, хотя разработчики броузеров, наверное, так не думают. Самая простая для описания ситуация – та, в которой высота задана явно посредством свойства height. В подобных случаях высота таблицы определяется значением свойства height. Это значит, что таблица может быть выше или ниже суммы высот ее строк, хотя спецификация CSS 2.1 от 11 апреля 2006 года гласит, что height трактуется как минимальная высота блоков таблицы. В таких случаях спецификация CSS2.1 отказывается явно определять, что должно произойти, но отмечает, что эта проблема может быть решена в будущих версиях CSS. Агент пользователя мог бы растягивать или сжимать строки таблицы, чтобы они соответствовали ее высоте, или делать пропуски внутри блока таблицы, или что-то совершенно другое. Выбор остается за агентом пользователя.

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


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

Кроме неясности по поводу таблиц с явно заданными высотами и тем, как интерпретировать высоты их строк, в список моментов, которые CSS2.1 не оговаривает, можно добавить следующие:
• Результат применения процентных значений для задания высоты ячеек таблицы.
• Результат применения процентных значений для задания высоты строк и групп строк таблицы.
• Как объединяющая строки ячейка влияет на высоту строк, которые объединены, кроме того, что строки должны вмещать объединенную ячейку.

Как видите, вычисление высоты таблиц преимущественно оставлено за агентами пользователя. Исторический опыт подсказывает, что в р зультате все агенты пользователя будут поступать по-своему, поэтому, вероятно, авторы должны максимально избегать задания высот.

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела CSS на эту тему:
Автоматическая компоновка
Анонимные объекты таблицы
Визуальная организация таблицы
Выравнивание
Значения свойства display для таблиц

Вернуться в раздел: CSS / 11. Верстка таблиц