Существует три распространенных способа верстки веб-страниц, отличающихся различным подходом — с помощью фреймов, таблиц и слоев. Такое разделение не означает, что используется только один прием верстки, скорее речь идет об их сочетании друг с другом.
В данной статье мы не будем затрагивать верстку с помощью фреймов, об этой теме написано уже множество материалов, где на разные лады поминают достоинства и недостатки фреймов. Обратимся к верстке таблицами и слоями. В последнее время все больше тем посвящено выбору между этими подходами к созданию веб-страниц и обсуждению, что лучше. На самом деле проблема по большей части надумана, нет особой разницы, как будет верстаться страница — слоями или таблицами. Каждый подход применяется для своих собственных целей. Чтобы было понятно, где и для чего используются таблицы и слои, приведено сравнения их свойств.
Недостатки
Недостатки
Для лучшего понимания различий между подходами, приведены примеры решения типичных задач с использованием таблиц и слоев.
Любая таблица с параметром bgcolor создает прямоугольную область определенного цвета. Такое выделение материала отделяет его от других элементов и привлекает внимание читателя. Отступ от края таблицы до содержимого регулируется параметром cellpadding или cellspacing.
Пример 1. Создание фоновой области с помощью таблицыПараметры слоя регулируются с помощью стилей. Чтобы задать фон области используется параметр background-color. Браузеры по разному обрабатывают этот параметр. Internet Explorer и Opera заливают цветом прямоугольную область, что весьма логично (рис. 1), а вот Netscape 4.x изменяет цвет фона только под текстом, вдобавок убирая отступы вокруг него (рис. 2).
![]() |
![]() |
Рис. 1. Internet Explorer | Рис. 2. Netscape 4.x |
Чтобы избавиться от этого недостатка, можно сделать рамку вокруг области, совпадающую с цветом фона.
Пример 2. Фоновая область с помощью слояПараметр padding задает отступы от содержимого до края области, а вот border нужен, чтобы браузер Netscape показывал все корректно.
Метод создания рамки вокруг области с использованием CSS совпадает как у таблиц, так и у слоев. Единственное отличие — Netscape 4.x рамку вокруг таблицы показывать не будет.
Пример 3. Создание рамкиОтступы от рамки до содержимого, как и в примере 2, определяются параметром padding.
Выравниванием называют изменение положения объекта таким образом, чтобы он находился у левого, правого края или по центру веб-страницы.
У тега TABLE, с помощью которого создается таблица, есть удобный параметр align, задающий положение всей таблицы. Допустимые значения — left, right, center, определяют выравнивание таблицы по левому, правому краю или центру.
Пример 4. Выравнивание таблицы по правому краюТаблицу с таким выравниванием, как в примере, текст, если он расположен рядом, будет обтекать слева.
Для изменения положения слоя, можно воспользоваться тем же параметром align, который имеется и у тега DIV. Однако при его использовании, выравниваться будет не сам слой, а только его содержимое. Чтобы исправить эту несправедливость, следует поместить слой внутрь еще одного тега DIV, задав у него предварительно нужное выравнивание.
Пример 5. Выравнивание слоя по правому краюОбратите внимание, что у внутреннего тега DIV тоже есть параметр align, который указывает противоположное положение. Он используется для того, чтобы нейтрализовать выравнивание справа, которое распространяется и на все внутренние тексты. Без этого атрибута и слой и его содержимое будет располагаться по правому краю.
Аналогично делается выравнивание и по центру.