Опубликован: 25.10.2006 | Уровень: для всех | Доступ: платный
Лекция 9:

Дополнительные возможности HTML

Аннотация: Данный урок посвящен дополнительным возможностям HTML: использованию шрифтов, стилей, мета-информации и сценариев. А также подводит итоги и является кратким заключением учебного курса HTML.

Компоновка документа в HTML

Выше были рассмотрены основные теги HTML. Используя их, уже можно создавать свои страницы. Но создание страницы это не только верстка материалов, но и компоновка всех элементов (меню, заголовок страницы, основное информационное наполнение, баннеры и др.) на странице HTML документа. Если все элементы должны располагаться один за другим, тогда понятно как поступить - размещаем все блоки последовательно друг за другом и получаем результат. А как быть, если два элемента должны размещаться на одном уровне по горизонтали? Например, меню должно находиться слева или справа от текста? Ответ очевиден, использовать свойство 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-кода

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

Анна Королёва
Анна Королёва

Пожалуйста, уточните, кто автор курса Основы работы с HTML ?

Федор Антонов
Федор Антонов

Здравствуйте!

Записался на ваш курс, но не понимаю как произвести оплату.

Надо ли писать заявление и, если да, то куда отправлять?

как я получу диплом о профессиональной переподготовке?

Данила Некрасов
Данила Некрасов
Россия, Пермь, ПНИПУ
Сергей Федоров
Сергей Федоров
Россия