Основы работы с HTML

Компоновка HTML - использование таблиц


Как известно тег <table> используется для отображения таблиц в HTML документах. У этого тега имеется атрибут border, указывающий толщину границы. И если его значение равно нулю, то граница не видна, видно лишь содержимое ячеек. Это и используется для компановки страниц. В распоряжении дизайнера появляется не одна большая область для вставки элементов, а бесконечное число более мелких зон.

Наберите следующий пример.

<html> <body> <p>Часть этой страницы отформатирована с помощью двух столбцов, как газетная страница. Все что находится ниже этого текста располагается в двух ячейках таблицы. Как можно видеть, есть левый столбец и правый столбец.</p> <table border="0" width="100%"> <tr><td width="50%" valign="top">Этот текст выводится в левом столбце.</td><td width="50%" valign="top">А этот текст выводится в правом столбце.</td></tr> </table> </body> </html>

Пример выполнения данного HTML-кода

В этом примере тег HTML <table> используется для деления части Web-страницы на два столбца, причем в данном случае ширина столбцов одинакова. Однако это не является обязательным условием, что показано в следующем примере.

<html> <body> <p>Часть этой страницы отформатирована с помощью двух столбцов, как газетная страница. Все что находиться ниже этого текста располагается в двух ячейках таблицы. Как можно видеть, есть левый столбец и правый столбец.</p> <table border="0" width="100%"> <tr><td width="20%" valign="top">Этот текст выводится в левом столбце. Ширина этого столбца 20%</td><td width="80%" valign="top">А этот текст выводится в правом столбце. Ширина столбца 80%</td></tr> </table> </body> </html>

Пример выполнения данного HTML-кода

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

Не имеет значения сколько текста будет размещено на этой странице, он будет оставаться в пределах своего столбца.

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


<html> <body> <p>Часть этой страницы отформатирован с помощью двух столбцов, как газетная страница, и общего заголовка. Все что находиться ниже этого текста располагается в трех ячейках таблицы, причем для верхней ячейки указан атрибут colspan="2". Как можно видеть, есть левый столбец и правый столбец, а также общий заголовок. Для каждой ячеки указан свой цвет фона.</p> <table border="0" width="100%" cellpadding="0" cellspacing="0"> <tr height="150px"><td width="100%" valign="top" colspan="2" bgcolor="#cccccc"> Этот текст выводится в верхней ячейке таблицы.</td></tr> <tr height="500px"><td width="20%" valign="top" bgcolor="#dddddd"> Этот текст выводится в левом столбце. Ширина этого столбца 20%</td><td width="80%" valign="top" bgcolor="#eeeeeee">А этот текст выводится в правом столбце. Ширина столбца 80%</td></tr> </table> </body> </html>

Пример выполнения данного HTML-кода

Этот же эффект можно получить и применив две таблицы вложенных одна в другую.

<html> <body> <p>Часть этой страницы отформатирован с помощью двух столбцов, как газетная страница, и общего заголовка. Все что находиться ниже этого текста располагается в ячейках таблицы, причем здесь применяется вложенностть одной таблицы в другую. Как можно видеть, есть левый столбец и правый столбец, а также общий заголовок. Для каждой ячеки указан свой цвет фона.</p>

<table border="0" width="100%" cellpadding="0" cellspacing="0"> <tr height="150px"><td width="100%" valign="top" bgcolor="#cccccc"> Этот текст выводится в верхней ячейке таблицы.</td></tr>

<tr height="500px"><td width="100%"> <table border="0" width="100%" height="100%" cellpadding="0" cellspacing="0"> <tr><td width="20%" valign="top" bgcolor="#dddddd"> Этот текст выводится в левом столбце. Ширина этого столбца 20%</td><td width="80%" valign="top" bgcolor="#eeeeeee"> А этот текст выводится в правом столбце. Ширина столбца 80%</td></tr></table> </td></tr> </table>

</body> </html>

Пример выполнения данного HTML-кода

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


Содержание раздела