Слои или таблицы?
Если вы уже попробовали сотворить страничку с помощью таблиц, то наверняка отметили ограничения, присущие этому методу. Во-первых, таблицы, как и обычные HTML-объекты, всегда позиционируются от левого верхнего угла страницы. И если нам надо разместить несколько слов где-нибудь в центре, то мы должны использовать полновесную таблицу с несколькими ячейками.
Во-вторых, позиция нужного объекта задается за счет точно заданных размеров ячеек таблицы. Но в этой же таблице находятся и другие объекты.
Изменяя размер ячеек, чтобы откорректировать координаты нужного объекта, мы можем непроизвольно сдвинуть со своих мест другие элементы страницы.
В-третьих, таблицы не позволяют накладывать одни объекты на другие. Если говорить честно, то это ограничение не столько таблиц, сколько классического языка HTML.
Слои лишены этих недостатков и обеспечивают более легкое макетирование страницы. Слою, а следовательно, и объекту, находящемуся в нем, можно сразу задать точные координаты размещения. Слои не требуют создания сложных структур ячеек, как таблицы, и исповедуют принцип независимости (рис. 13.2).
|
Рис. 13.2. Для позиционирования объекта на Web-странице требуется либо таблица с несколькими ячейками, либо только один слой |
|
Рис. 13.3. Пример композиции из нескольких объектов на Web-странице. Объекты (текстовые надписи и изображение скорпиона) размещены внутри слоев |
Изменяя координаты и размеры одного слоя, мы никак не влияем на координаты и размеры других слоев, что значительно упрощает разработку Web- страницы. А кроме того, слои можно накладывать друг на друга, что используется для создания необычных эффектов — необычных для Web-дизайнеров, но давно доступных для дизайнеров, работающих в верстальных и графических программах (рис. 13.3).
Учитывая еще и широкие возможности слоев по созданию интерактивных эффектов DHTML, слои — это невероятно мощное оружие Web-дизайнера. Мощное, но нестабильное, в силу разного подхода к слоям у браузеров. Поэтому, на всякий случай, мы рассмотрим в конце этой главы методы конвертирования слоев в таблицы, которые не так эффективны, может быть, зато стабильно отображаются в большинстве браузеров.