HTML-документ — это один большой контейнер,
который начинается с тега
<HTML> и
заканчивается тегом
</HTML>:
<HTML>Содержание
документа</HTML>
Контейнер HTML или гипертекстовый документ
состоит из двух других вложенных контейнеров:
заголовка
документа (HEAD)
и тела документа (BODY).
Рассмотрим простейший пример классического
документа.
<HTML>
<HEAD>
<TITLE>Простейший документ</TITLE>
</HEAD>
<BODY TEXT=#0000ff BGCOLOR=#f0f0f0>
<H1>Пример простого документа</H1>
<HR>
Формы HTML-документов
<UL>
<LI>Классическая
<LI>Фреймовая
</UL>
<HR>
</BODY>
</HTML>
Компания Netscape Communication расширила
классическую форму документа возможностью
организации фреймов (кадров), позволяющих
разделить рабочее окно программы просмотра
на несколько независимых фреймов. В каждый
фрейм можно загрузить свою страницу HTML.
Приведем пример документа с фреймами.
<HTML>
<HEAD>
<TITLE>Документ с фреймами</TITLE>
</HEAD>
<FRAMESET COLS="30%,*">
<FRAME SRC=frame1.htm NAME=LEFT>
<FRAME SRC=frame2.htm NAME=RIGHT>
</FRAMESET>
</HTML>
Назначение
заголовка
Заголовок HTML-документа
является необязательным элементом разметки.
В HTML 2.0 предлагалось вообще отказаться от
элементов HEAD
и BODY. В то
время в HTML не было элементов, которые
использовались одновременно и в
заголовке, и в
теле документа. Современная практика HTML-разметки
такова, что почти в каждом документе есть
HTML-заголовок.
Первоначально
существование
заголовка определялось необходимостью
именования окна браузера. Это достигалось за
счет элемента разметки
TITLE:
<HTML>
<HEAD>
<TITLE>Это заголовок</TITLE>
...
</HEAD>
<BODY>
...
</BODY>
</HTML>
Отображение содержания элемента TITLE
Однако
задумывался заголовок
для несколько иных целей. Исходя из общих
соображений, связанных с теорией и практикой
разработки и эксплуатации гипертекстовых
систем, все гипертекстовые связи
информационных узлов принято разделять на
контекстные и общие.
Контекстные
гипертекстовые связи соответствуют
определенному месту документа — контексту. В
HTML такие связи реализованы в виде
гипертекстовых ссылок (элемент
A (anchor)).
Фактически до реализации таблиц описателей
стилей в современных браузерах это был
единственный вид связей, которыми мог
управлять автор HTML-документа.
Общие
гипертекстовые связи определяются не частью
документа (контекстом), а всем документом
целиком. Например, быть предыдущим по
отношению к другому документу или следующим
— это общая гипертекстовая связь, которая
позволяет организовать так называемый "линейный"
просмотр информационных узлов гипертекстовой
сети.
Реализация
такого сорта ссылок уже давно является
частью проектов W3C (Arena, Amaya). В
коммерческих браузерах такой механизм
реализован только для описателей стилей
(элемент разметки
LINK).
Важную роль
заголовок
HTML-документа играет в JavaScript.
Существует принципиальная разница между
заголовком и
телом документа при использовании элемента
разметки SCRIPT.
Она заключается в определении зоны видимости
функций и переменных. Переменные и функции,
определенные в
заголовке документа, относятся ко
всему окну браузера. Это значит, что к ним
можно обратиться из любого места документа и
изменить их значения. Кроме того, к ним
можно обратиться из другого окна или фрейма.
Фактически, это глобальные переменные. При
работе с многослойными документами
переменные и функции тела относятся к слоям,
что делает доступ к ним неудобным.
Еще одной
функцией заголовка
HTML-документа является управление
HTTP-обменом через элемент разметки
META. При
современной практике размещения Web-узлов
компаний на серверах провайдеров
администраторы этих узлов могут не иметь
возможности управлять программой-сервером. В
этом случае для управления обменом остается
только одна возможность — через
заголовок
HTML-документа.
Нельзя также
не упомянуть еще об одном важном назначении
заголовка
HTML-документа — поисковом образе документа
для индексирования роботами поисковых
систем. Элемент META
позволяет хранить списки ключевых слов и
описания документа, которые будут
использоваться для составления индекса
поисковой системы и появляться в качестве
описания документа в случае выдачи ссылки на
него при поиске по ключевым словам.
Основные
контейнеры заголовка
Основные
контейнеры заголовка
— это элементы HTML-разметки, которые
наиболее часто встречаются в
заголовке
HTML-документа, т.е. внутри элемента
разметки HEAD.
Мы рассмотрим
только восемь элементов разметки, включая
сам элемент разметки
HEAD:
-
HEAD
(элемент разметки
HEAD);
-
TITLE
(заглавие документа);
-
BASE (база
URL);
-
ISINDEX (поисковый шаблон);
-
META
(метаинформация);
-
LINK (общие
ссылки);
-
STYLE
(описатели стилей);
-
SCRIPT
(скрипты).
Чаще всего
применяются элементы
TITLE, SCRIPT,
STYLE.
Использование элемента
META говорит об осведомленности
автора о правилах индексирования документов
в поисковых системах и возможности
управления HTTP-обменом данными.
BASE и
ISINDEX в последнее время практически не
применяются. LINK
указывают только при использовании внешних
относительно данного документа описателей
стилей.
Элемент
разметки HEAD
Элемент
разметки HEAD
содержит заголовок
HTML-документа. Данный элемент разметки не
является обязательным. При наличии тега
начала элемента разметки желательно
использовать и тег конца элемента разметки.
По умолчанию элемент
HEAD закрывается, если встречается
либо тег начала контейнера
BODY, либо тег
начала контейнера
FRAMESET. Атрибутов у тега начала
контейнера нет, хотя в DTD HTML один
необязательный атрибут прописан. Синтаксис
контейнера HEAD
в общем виде выглядит следующим образом:
<HEAD
profile="http://www.intuit.ru/help">
Это пример из документации по сайту
Интернет-
Университета Информационных Технологий
</HEAD>
Контейнер
заголовка
служит для размещения информации,
относящейся ко всему документу в целом.
Необязательный атрибут
PROFILE
указывает на внешний файл
META-тегов. В
качестве значения этого атрибута указывается
URL данного файла.
Элемент
разметки TITLE
Элемент
разметки TITLE
служит для именования документа в World Wide
Web. Более прозаическое его назначение —
именование окна браузера, в котором
просматривается документ. Состоит контейнер
из тега начала, содержания и тега конца.
Наличие тега конца обязательно. Тег начала
элемента не имеет специфических атрибутов.
В различных
браузерах алгоритм отображения элемента
TITLE может
отличаться. Так, в некоторых руководствах
предлагается создать бегущую строку в
заголовке
документа, указав несколько последовательных
контейнеров TITLE:
<TITLE>И</TITLE>
<TITLE>Ин</TITLE>
<TITLE>Инт</TITLE>
<TITLE>Инте</TITLE>
<TITLE>Интер</TITLE>
...
<TITLE>Интернет-Университе</TITLE>
<TITLE>Интернет-Университет</TITLE>
Такой
механизм в современных браузерах не
работает. При этом следует учитывать, что в
отличие от реализации "бегущей" строки
средствами JavaScript, лидирующие пробелы в
заголовке
игнорируются.
При выборе
текста для содержания контейнера
TITLE следует
учитывать, что отображается он системным
шрифтом, так как является
заголовком окна
браузера. В нелокализованных версиях
операционных систем и графических оболочек
русский текст содержания элемента
TITLE будет
отображаться абракадаброй.
Синтаксис
контейнера TITLE
в общем виде выглядит следующим образом:
<TITLE>название
документа</TITLE>
Заголовок не
является обязательным контейнером документа.
Его можно опустить. Роботы многих поисковых
систем используют содержание элемента
TITLE для
создания поискового образа документа. Слова
из TITLE
попадают в индекс поисковой системы. Из этих
соображений элемент
TITLE всегда рекомендуется
использовать на страницах Web-узла.
Элемент
разметки BASE
Элемент
разметки BASE
служит для определения базового URL для
гипертекстовых ссылок документа, заданных в
неполной (частичной) форме. Кроме того,
BASE позволяет
определить мишень (окно) загрузки документа
по умолчанию при выборе гипертекстовой
ссылки текущего документа.
Разметка
гипертекстовых ссылок обычно выполняется как
разметка в частично заданных (относительных)
адресах, когда URL задается относительно
текущего местоположения документа.
<A
HREF=../next_level/document.html>...</A>
В этом случае
в качестве базы по умолчанию выбирается
каталог, в котором размещен HTML-документ (../).
Такой стиль разметки удобен тем, что при
переносе всего дерева документов в другое
место не потребуется менять систему
гипертекстовых ссылок внутри документов.
Кроме того, распространению этого стиля
способствует и сама архитектура World Wide
Web. Наиболее тесные связи между документами
задаются только в рамках одного Web-узла.
Связей данного узла с остальными существенно
меньше, и их можно прописать непосредственно
в ссылках в полной форме.
Контейнер
BASE можно
использовать вне документа, в
заголовке или
теле документа. При этом область действия
базового адреса определяется от места
размещения контейнера до следующего
контейнера BASE.
<BASE
HREF=http://intuit.ru/start/>
<HTML>
<HEAD>
<BASE HREF=http://intuit.ru/cgi-bin/>
... </HEAD>
<BODY>
<BASE HREF=http://intuit.ru/start/>
... </BODY>
</HTML>
Наиболее
часто BASE
встречается на страницах узлов, которые
имеют "зеркала". Часть документов основного
сервера по разным причинам на "зеркальный"
сервер не переносится. В этом случае
документ с принудительно заданным базовым
URL всегда будет ссылаться на основной
сервер. Он оказывается "белой вороной" среди
прочих документов Web-узла. При этом такая
схема часто используется в совокупности с
запретом на кэширование данного документа
как клиентом (браузером), так и
proxy-серверами.
Существуют
различия и при определении базового URL по
умолчанию при обращении к страницам, которые
различны по своей природе. Если для обычного
файла базовым адресом по умолчанию является
адрес каталога, где хранится данный файл, то
для страниц, которые генерируются "на лету",
возможны и другие базовые адреса по
умолчанию. Например, для страниц,
сгенерированных CGI-скриптом, адресом по
умолчанию является URL данного скрипта. Если
из такой страницы снова вызвать скрипт, как
частично заданную ссылку, то имя скрипта
будет передано в качестве параметра скрипту,
который сгенерировал данную страницу.
<A
HREF=http://intuit.ru/cgi-bin/script/intuit.ru?name=value>...</A>
Базовый
адрес:
http://intuit.ru/cgi-bin/script/intuit.ru
Если скрипт
вызовет сам себя по частично заданной
ссылке, то он себя не найдет.
Возможность
определения мишени загрузки позволяет не
указывать атрибут TARGET в теге начала
контейнера A (anchor):
<A HREF=intuit.htm
TARGET=left>intuit</A>
Потребность в
этом возникает при организации постоянно
отображаемых меню. Такое меню может быть
реализовано либо во фрейме, либо в окне. При
этом информационные страницы Web-узла,
которые загружаются при активизации
гипертекстовых ссылок, будут загружаться в
другое окно или фрейм.
Особенно
полезен атрибут
TARGET на страницах с вызовом
скриптов, если результат работы скрипта
нужно загрузить в определенное окно (фрейм).
Тег начала
контейнера содержит один обязательный
атрибут HREF,
и может содержать один необязательный
атрибут TARGET.
Синтаксис контейнера
BASE в общем виде выглядит следующим
образом:
<BASE
HREF="http://www.intuit.ru/intro.html">
<BASE
HREF=http://www.intuit.ru/intro.html
TARGET=new>
Применение
BASE в
современных документах ограничено в силу
разных причин. В сложных случаях можно
пользоваться указаниями URL в полной форме.
Элемент
разметки ISINDEX
Элемент
разметки ISINDEX используется для
указания поискового шаблона и унаследован от
ранних версий HTML. В HTML 4.0 этот
контейнер не определен. Утрата данного
контейнера объясняется широким применением
форм и CGI-скриптов. Тем не менее все
браузеры его поддерживают.
Шаблон ввода
ключевых слов при наличии данного контейнера
в заголовке
HTML-документа отображается в виде
дополнительного поля ввода рабочей области
браузера, что нарушает компоновку
HTML-страниц, выполненных с применением
современных средств разметки. Больше всего
ISINDEX подходит для документов с
компоновкой в стиле HTML 2.0.
<HTML>
<HEAD>
<ISINDEX>
</HEAD>
<BODY>
...
</BODY>
</HTML>
Применение элемента
ISINDEX
В
классическом варианте при использовании
ISINDEX список ключевых слов, которые
вводятся в поисковом шаблоне и разделены
символом "+", присоединяется к базовому
адресу HTML-документа после символа "?".
http://intuit.ru/isindex.html?keyword+list
Очевидно, что
сам HTML-документ не способен выполнить
поиск. Это может сделать только поисковая
программа.
Присоединение
запроса к документу унаследовано от первого
сервера CERN (Conseil Europeen pour la
Recherche Nucleaire, Европейская организация
по ядерным исследованиям), в котором оно
использовалось по аналогии с поисковыми
серверами Gopher. Современный подход,
основанный на HTML-формах, позволяет
указывать URL поисковой программы, что дает
большую свободу при разметке страниц.
Современный
синтаксис ISINDEX позволяет применить
аналогичный формам подход. Для этой цели в
теге начала контейнера ISINDEX можно
указать атрибут
ACTION.
<ISINDEX
ACTION=/cgi-bin/search.cgi>
Однако и
традиционная форма контейнера позволяет
обращаться к внешним CGI-скриптам. Сделать
это можно либо в совокупности с контейнером
BASE, либо с
использованием SSI.
В первом
случае для всего документа устанавливается
базовый URL поисковой программы. Все URL
гипертекстовых ссылок на другие страницы
задаются в полной форме или базовый адрес
переназначается после ISINDEX. Это
вполне оправдано, если данная страница
ничего, кроме поискового критерия и ссылки
на домашнюю страницу Web-узла, не содержит.
<HTML>
<HEAD>
<BASE HREF=http://intuit.ru/cgi-bin/search.cgi>
<ISINDEX>
</HEAD>
<BODY>
<BASE HREF=http://intuit.ru/>
</BODY>
Во втором
случае в документ встраивается обращение к
CGI-скрипту, который реализует функции
поисковой программы. Такое совмещение —
свойство современного подхода к компоновке
поисковых страниц. Как правило, и поисковый
шаблон, и результаты поиска отображаются на
одной странице, так как это позволяет
корректировать запрос по мере получения
результатов поиска. Встроенный в страницу
скрипт анализирует переменные окружения
сервера, и в случае отсутствия запроса может
вообще никак не обнаруживать свое
присутствие внутри документа.
Тег начала
элемента может содержать два необязательных
атрибута: ACTION
и PROMPT.
Синтаксис элемента ISINDEX в общем
виде выглядит следующим образом:
<ISINDEX
[PROMPT=текст] [ACTION=URL]>
Первый
необязательный атрибут тега начала
ISINDEX — PROMPT.
Он позволяет вместо стандартного приглашения
к вводу ключевых слов задать приглашение,
которое, по мнению автора документа, лучше
отражает суть поискового шаблона. Например,
можно задать приглашение к вводу ключевых
слов на русском языке.
Введите ключевые
слова:
Применение атрибута
PROMPT
ISINDEX
— отмирающий элемент разметки. Однако он
определил формат обмена данными ISINDEX.
Данные в этом формате передаются от браузера
серверу в случае применения ISINDEX и
в случае прямого указания дополнительных
параметров после символа "?" в
гипертекстовой ссылке.
Элемент
разметки META
Это наиболее
популярный элемент разметки
заголовка,
более распространен только элемент
TITLE. Такое
положение дел объясняется назначением
данного элемента разметки.
META
содержит управляющую информацию, которую
браузер использует для правильного
отображения и обработки содержания тела
документа.
Впервые
контейнер META
был задействован при принудительной
перезагрузке документа браузером через
заголовок
HTTP-сообщения. В
заголовке HTTP-сообщения можно
указать оператор
refresh. Время, заданное как параметр
этого оператора, определяет интервал в
секундах, после которого браузер загружает
документ, определенный атрибутом URL данного
оператора. Впервые этот механизм был
реализован на сервере CERN, но наибольшую
популярность приобрел при использовании
сервера WN (Web-сервер, который был
разработан для платформы Linux).
В контейнере
META подобный
механизм реализуется следующим образом:
<META
HTTP-EQUIV="Refresh" CONTENT="1;
URL=refresh.htm">
В данном
случае через одну секунду после загрузки
документа браузер должен инициировать
загрузку страницы
refresh.htm.
Используя
этот механизм, можно построить автоматически
перезагружаемую последовательность страниц.
Для этого в заголовке
каждой страницы из данной последовательности
следует разместить соответствующий контейнер
META.
<META
HTTP-EQUIV="Refresh" CONTENT="1;
URL=refreshX.htm">
Заглавная
буква "Х" в слове "refreshX.htm" — это цифра
номера кадра. На странице нулевого кадра в
этом месте следует указать на первый кадр (refresh1.htm),
на странице первого кадра — на второй (refresh2.htm)
и т.д.
В Windows 95
и Windows NT 4.0 с поддержкой таблиц UNICODE
появилась возможность указывать тип
кодировки документа —
CHARSET. К сожалению, на многих
Unix-платформах этот механизм не работает,
что часто приводит к ошибкам, например в
IRIX версий 6.2-6.4. Скептическое отношение
поклонников Unix к этой возможности ничем не
подкреплено, так как основная масса
пользователей российской части Internet
просматривает документы World Wide Web в
Windows. Для перекодировки на стороне
клиента (документ подготовлен в кодировке
cp1251) в
заголовок
документа необходимо включить
META-тег
следующего вида:
<META
HTTP-EQUIV="Content-type"
CONTENT="text/html;
CHARSET=windows-1251">
Приведенный
выше пример показывает, как используются
операторы заголовка
HTTP-сообщения. Однако здесь тоже следует
быть осторожным. Большинство российских
Web-узлов используют в качестве HTTP-сервера
Russian Apache. Эта модификация сервера
поддерживает перекодировку документов "на
лету" для правильного отображения на стороне
клиента. Russian Apache сам вставляет в
HTTP-заголовок
(не путать с HEAD)
директиву
Content-type. Если в документе будет
META-элемент c
указанием типа кодировки, а Apache
перекодировал содержание, то возможно
несоответствие между указанным в
META типом
кодировки и реальной кодировкой содержания
документа.
Кроме
Content-type,
можно указать и другие операторы. Например,
запретить кэширование документа.
Необходимость в этом возникает при частом
обновлении документа или наличии в нем
изменяющихся SSI-вставок. Для запрета
кэширования достаточно вставить в
заголовок
META-тег вида:
<META
HTTP-EQUIV="Pragma" CONTENT="no-cache">
Pragma — это
наследие HTTP 1.0. В новой версии протокола
HTTP (HTTP 1.1) управление кэшированием
осуществляется через оператор
Cache-Control.
Для получения такого же эффекта, как в
случае с Pragma,
в заголовке
HTML-документа достаточно указать:
<META
HTTP-EQUIV="Cache-Control"
CONTENT="no-cache">
Новый
механизм управления кэшированием и хранением
документа на стороне клиента гораздо более
гибок, чем в HTTP 1.0. Например, можно
запретить хранение документа после
пересылки:
<META
HTTP-EQUIV="Cache-Control"
CONTENT="no-store">
Точно так же
можно задать время последней модификации
(Last-Modified) или дату истечения
актуальности документа (Expire).
С появлением
роботов поисковых
машин на META-тег
была возложена еще одна функция — описание
поискового образа документа. Наиболее
последовательно это было впервые реализовано
в Webcrawler. До этого в качестве поискового
образа документа использовался либо весь
список слов документа, либо слова первого
абзаца.
Собственно,
для описания документа используется два
META-тега. Один
определяет список ключевых слов, а второй –
реферат (краткое содержание документа),
который отображается в качестве пояснения к
ссылке на документ в отчете
поисковой машины
о выполненном запросе. Контейнер
TITLE здесь
также используется в качестве названия
документа.
<TITLE>Основы
Web-технологий</TITLE>
<META NAME="description"
http-equiv="description"
content="Учебный курс Основы
Web-технологий.
Тема: Заголовок HTML-документа. Элемент
разметки META. Дается краткое описание
основных способов применения контейнера
META
в заголовке HTML-документа.
Рассматривается
управление HTTP-обменом и индексирование
документов.">
<META NAME="keywords"
HTTP-EQUIV="keywords"
CONTENT="учебный курс; Web-технология;
web;
технология; HTML; язык гипертекстовой
разметки;
заголовок HTML-документа; заголовок;
HTML;
документ; контейнер; META; элемент;
HEAD;
пример; разметка; методика">
При
индексировании такого документа содержимое
контейнера TITLE
и атрибутов CONTENT
контейнеров META
после фильтрации попадет в индекс
поисковой машины
и может быть использовано для составления
запросов. Процесс фильтрации отбракует так
называемые stop-слова и общие слова. Они не
попадут в индекс
поисковой машины. В частности, будут
отбракованы предлоги или, если речь идет о
тематическом поисковом индексе, например по
технологиям World Wide Web, то в него не
попадут: web, Web-технология и т.п.
META-тегом
пользуются и программы подготовки
документов. Они размещают в нем свой
идентификатор. В общем случае контейнер
META выглядит
следующим образом:
<META [name=имя]
[HTTP-EQUIV=имя_HTTP-оператора]
CONTENT=текст>
Практика
показывает, что при индексировании можно
указывать одновременно и атрибут
NAME, и
атрибут HTTP-EQUIV
с одинаковыми значениями. Это связано с тем,
что одни роботы индексирования анализируют
содержание META-элемента
по атрибуту NAME,
а другие — по атрибуту
HTTP-EQUIV.
Элемент
разметки LINK
Элемент
разметки LINK –
это результат давно предпринятой попытки
придать HTML академический вид. Согласно
теории гипертекстовых систем, все
гипертекстовые связи разделяют на два типа:
контекстные и общие. Такое деление чисто
условное и определяется тем, что контекстную
связь можно привязать к определенному месту
документа, а общую — отнести только ко всему
документу целиком. Если взглянуть на
проблему связи чуть шире, то очевидной
становится аналогия с отношениями.
Гипертекстовая связь задает отношение на
множестве информационных узлов.
Контекстная
связь определяет отношение на паре узлов.
При этом в модели World Wide Web один из
узлов является источником, а второй —
мишенью. Собственно, это и отражено в
названии элемента разметки
A (anchor),
который определяет гипертекстовую ссылку (не
путать с гипертекстовой связью). При этом в
контекстной связи один и тот же термин может
идентифицировать разные связи. Например, в
контексте содержания конспекта данной темы
слово "HEAD"
определяет документ
head.htm, который описывает контейнер
HEAD и
особенности его применения, а в контексте
справочника по данной теме слово "HEAD"
будет означать ссылку на описание синтаксиса
этого контейнера.
Общие ссылки
нельзя привязать по контексту. Например, два
информационных узла находятся в отношении
следования, т.е. при "линейном" просмотре
одна Web-страница является следующей для
другой Web-страницы. В этом случае речь идет
о страницах целиком, а не об отдельных их
частях. Такой же общей связью является
принадлежность к Web-узлу, который
ассоциируется со своей домашней страницей.
В
информационно-поисковых системах поисковый
термин определяет отношение "быть
заиндексированным данным термином", которое
также задает связь соответствующих
документов.
В настоящее
время в браузерах не существует единого
способа программирования или определения
общих гипертекстовых связей. В течение
последних пяти лет W3C строит уже второй
браузер, который должен продемонстрировать
возможность программирования икон меню
браузера (вперед, назад и т.п.). Однако
производители наиболее популярных браузеров
такой поддержки через HTML-разметку в своих
программах не предлагают.
Существенный
сдвиг в этом направлении произошел после
реализации поддержки описателей стилей в
Netscape Navigator и Internet Explorer
четвертых версий. CSS (Cascade
STYLE Sheets,
каскадные таблицы стилей) позволяют
определять для различных типов
гипертекстовых связей вид гипертекстовых
ссылок. При этом можно определять различные
типы контекстных ссылок. Кроме того, впервые
нашел осмысленное применение контейнер
LINK. Он
позволил загружать внешние описатели стилей:
<LINK
REL=stylesheet href="../css/style.css"
TYPE="text/css">
В данном
случае речь идет о загрузке стилей из файла
style.css. При
этом стили задаются в нотации W3C, а не
JavaScript, что определяется атрибутом
TYPE. В
сущности, атрибут REL
определяет тип гипертекстовой связи, HREF
(Нуреrtехt REFerence) указывает адрес
документа, идентифицирующего связь, а
атрибут TYPE
определяет тип содержания этого документа.
В общем
случае контейнер LINK
имеет следующий вид:
<LINK
[REL=тип_отношения] [HREF=URL]
[TYPE=тип_содержания]>
Для разных
типов содержания действия по интерпретации
элемента разметки будут различными. В
настоящее время идет процесс разработки
спецификаций описания метаданных, где
возможно применение элемента разметки
LINK.
Элемент
разметки STYLE
Элемент
разметки STYLE
предназначен для размещения описателей
стилей. При этом описание стиля из данного
элемента разметки, если оно совпадает по
имени класса и/или идентификатору подкласса
со стилем, описанным во внешнем файле,
заменяет описание стиля из внешнего файла. С
точки зрения влияния на весь документ,
описатели стилей задают правила отображения
контейнеров HTML-документа для всей
страницы.
В настоящее
время контейнер используется только с одним
атрибутом TYPE,
который задает тип описателя стиля. Это
может быть либо
text/css , либо
text/javascript.
Если элемент разметки открыт тегом начала,
то он должен быть закрыт тегом конца. В
общем виде запись элемента
STYLE выглядит
так:
<STYLE
TYPE=тип_описания_стилей>
описание стиля/стилей
</STYLE>
Применению
стилей в HTML-разметке, а также
проектированию Web-узлов с применением CSS
посвящена отдельная глава "Применение
каскадных таблиц и стилей".
Элемент
разметки SCRIPT
Элемент
разметки SCRIPT
служит для размещения кода JavaScript,
VBScript или JScript. Вообще говоря,
SCRIPT можно
использовать не только в
заголовке
документа, но и в его теле. В отличие от
контейнера STYLE,
ему не требуется дополнительный контейнер
LINK для
загрузки внешних файлов кодов. Это можно
сделать непосредственно в самом контейнере
SCRIPT:
<SCRIPT
LANGUAGE="JavaScript"
SRC=script.code>
Если открыт
тег начала, то нужно обязательно
использовать тег конца контейнера. В
противном случае, браузер может отобразить
только символ "]". Если код не помещен в
HTML-комментарии, то старые версии браузеров
(до Mozilla 2) отображают программу перед
текстом страницы. В ряде случаев страница
вообще может не отображаться.
В общем виде
запись контейнера выглядит следующим образом:
<SCRIPT [TYPE=тип_языка_программирования]
[SRC=URL]>
JavaScript/VBScript-код
</SCRIPT>
Существует
несколько скриптовых языков: JavaScript,
VBScript, JScript. По умолчанию
подразумевается JavaScript. Подробнее с
JavaScript и контейнером
SCRIPT можно
ознакомиться в курсе "Введение в
JavaScript".
|