Агент пользователя

Агент пользователя – это любое устройство, интерпретирующее документы в формате HTML. Агенты пользователя включают визуальные браузеры (текстовые и графические), невизуальные браузеры (аудио, Бройля), поисковые машины, прокси и т. д.

Краткое введение в SGML

SGML – это система определения языков разметки. Авторы размечают свои документы, представляя информацию о структуре, представлении и семантике в одном документе. HTML является одним из примеров языка разметки. Вот пример документа на языке HTML:


«http://www.w3.org/TR/REC-html40/strict.dtd">

My first HTML document

Hello world!

Документ HTML состоит из раздела заголовка (здесь – между тэгами и ) и тела (здесь – между заголовками и ). Заголовок документа отображается в заголовке (вместе с другой информацией о документе), а содержимое документа находится в теле. В этом примере тело документа состоит только из одного абзаца, помеченного 

.

Конструкции SGML, используемые в HTML

Элементы

Определение типа документа. SGML объявляет типы элементов, представляющие структуры или желательное поведение. HTML включает типы элементов, представляющие абзацы, гипертекстовые ссылки, списки, таблицы, изображения и т. д.

Каждое объявление типа элемента обычно включает три части: начальный тэг, содержимое и конечный тэг.

Имя элемента отображается в начальном тэге (пишется <имя-элемента>) и в конечном тэге (пишется ); не забывайте про слеш перед именем элемента в конечном тэге. Например, начальные и конечные тэги элемента UL определяют список:

  • …элемент списка 1…

  • …элемент списка 2…

Некоторые типы элементов HTML позволяют авторам опускать конечные тэги (например, типы элементов P and LI). Несколько типов элементов также позволяют опускать начальные тэги; например, HEAD и BODY. HTML DTD указывает для каждого типа элемента, являются ли начальный и конечный тэги обязательными.

Некоторые типы элементов HTML не имеют содержимого. Например, элемент перехода на следующую строку BR не имеет содержимого; его роль – прерывание строки текста. Такие пустые элементы никогда не имеют конечных тэгов. Определение типа документа и текст спецификации указывают, является ли тип элемента пустым (не имеет содержимого) или, если он может иметь содержимое, что является допустимым содержимым.

Имена элементов всегда учитывают регистр.

Информацию о правилах, управляющих элементами (например, что они могут быть вложенными соответствующим образом, конечный тэг закрывает все опущенные начальные тэги вплоть до соответствующего ему начального тэга и так далее), смотрите в стандарте SGML.

Например, следующий абзац:

Это первый абзац. 

…элемент блока…

можно перезаписать без конечного тэга:

Это первый абзац.

…элемент блока…

поскольку начальный тэг

закрывается следующим элементом блока. Точно так же записывают, если абзац включен в элемент блока, например:

Это абзац.

конечный тэг включающего элемента блока (здесь –

) служит также конечным тэгом открытого начального тэга 

.

Элементы – это не тэги. Иногда элементы называют тэгами (например, «тэг P»). Помните, что элемент – это одно, а тэг (не имеет значения, признак начала или конца) – другое. Например, элемент HEAD всегда присутствует, даже если начальный и конечный тэги HEAD отсутствуют.

Атрибуты

С элементами могут быть связаны свойства, называемые атрибутами, которые могут иметь значения (стандартные или устанавливаемые авторами или сценариями). Пары атрибут/значение помещаются перед закрывающей скобкой ">" начального тэга элемента. В начальном тэге элемента может содержаться любое число (допустимых) пар атрибут/значение, разделенных пробелами. Они могут указываться в любом порядке.