Агент пользователя
Агент пользователя – это любое устройство, интерпретирующее документы в формате HTML. Агенты пользователя включают визуальные браузеры (текстовые и графические), невизуальные браузеры (аудио, Бройля), поисковые машины, прокси и т. д.
Краткое введение в SGML
SGML – это система определения языков разметки. Авторы размечают свои документы, представляя информацию о структуре, представлении и семантике в одном документе. HTML является одним из примеров языка разметки. Вот пример документа на языке HTML:
Hello world!
Документ HTML состоит из раздела заголовка (здесь – между тэгами
и ) и тела (здесь – между заголовками и ). Заголовок документа отображается в заголовке (вместе с другой информацией о документе), а содержимое документа находится в теле. В этом примере тело документа состоит только из одного абзаца, помеченного.
Конструкции SGML, используемые в HTML
Элементы
Определение типа документа. SGML объявляет типы элементов, представляющие структуры или желательное поведение. HTML включает типы элементов, представляющие абзацы, гипертекстовые ссылки, списки, таблицы, изображения и т. д.
Каждое объявление типа элемента обычно включает три части: начальный тэг, содержимое и конечный тэг.
Имя элемента отображается в начальном тэге (пишется <имя-элемента>) и в конечном тэге (пишется имя-элемента>); не забывайте про слеш перед именем элемента в конечном тэге. Например, начальные и конечные тэги элемента UL определяют список:
-
…элемент списка 1…
-
…элемент списка 2…
Некоторые типы элементов HTML позволяют авторам опускать конечные тэги (например, типы элементов P and LI). Несколько типов элементов также позволяют опускать начальные тэги; например, HEAD и BODY. HTML DTD указывает для каждого типа элемента, являются ли начальный и конечный тэги обязательными.
Некоторые типы элементов HTML не имеют содержимого. Например, элемент перехода на следующую строку BR не имеет содержимого; его роль – прерывание строки текста. Такие пустые элементы никогда не имеют конечных тэгов. Определение типа документа и текст спецификации указывают, является ли тип элемента пустым (не имеет содержимого) или, если он может иметь содержимое, что является допустимым содержимым.
Имена элементов всегда учитывают регистр.
Информацию о правилах, управляющих элементами (например, что они могут быть вложенными соответствующим образом, конечный тэг закрывает все опущенные начальные тэги вплоть до соответствующего ему начального тэга и так далее), смотрите в стандарте SGML.
Например, следующий абзац:
Это первый абзац.
…элемент блока…
можно перезаписать без конечного тэга:
Это первый абзац.
…элемент блока…
поскольку начальный тэг
закрывается следующим элементом блока. Точно так же записывают, если абзац включен в элемент блока, например:
Это абзац.
конечный тэг включающего элемента блока (здесь –
.
Элементы – это не тэги. Иногда элементы называют тэгами (например, «тэг P»). Помните, что элемент – это одно, а тэг (не имеет значения, признак начала или конца) – другое. Например, элемент HEAD всегда присутствует, даже если начальный и конечный тэги HEAD отсутствуют.
Атрибуты
С элементами могут быть связаны свойства, называемые атрибутами, которые могут иметь значения (стандартные или устанавливаемые авторами или сценариями). Пары атрибут/значение помещаются перед закрывающей скобкой ">" начального тэга элемента. В начальном тэге элемента может содержаться любое число (допустимых) пар атрибут/значение, разделенных пробелами. Они могут указываться в любом порядке.