Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Глава 19. Глобальная структура документа
Документ в формате HTML 4.0 состоит из трех частей:
Перед каждым элементом или после каждого элемента может находиться пустое пространство (пробелы, переход на новую строку, табуляции и комментарии). Разделы 2 и 3 должны отделяться элементом HTML. Вот пример простого документа HTML: <! DOCTYPE HTML PUBLIC " -//W3C//DTD HTML 4.0//EN" " http: //www.w3.org/TR/REC-html40/strict.dtd" > < HTML> < HEAD> < TITLE> Мой первый документ HTML< /TITLE> < /HEAD> < BODY> < P> Всем привет! < /BODY> < /HTML> Информация о версии HTML В документе HTML должна быть объявлена используемая в нем версия языка HTML. Объявление типа документа указывает определение типа документа (DTD), используемое в этом документе. HTML 4.0 определяет три DTD, так что авторы должны включать в свои документы одно из следующих объявлений типов. Разница между DTD заключается в поддерживаемых ими элементах. HTML 4.0 Strict DTD (строгое определение) включает все элементы и атрибуты, не являющиеся нежелательными и не использующиеся в документах с кадрами. Для документов, использующих это DTD, используйте такое объявление типа документа: <! DOCTYPE HTML PUBLIC " -//W3C//DTD HTML 4.0//EN" " http: //www.w3.org/TR/REC-tml40/strict.dtd" > HTML 4.0 Transitional DTD (переходное определение) включает все, что включено в строгое DTD, а также нежелательные элементы и атрибуты (большинство из которых относится к визуальному представлению). Для документов, использующих это DTD, используйте такое объявление типа документа: <! DOCTYPE HTML PUBLIC " -//W3C//DTD HTML 4.0 Transitional//EN" " http: //www.w3.org/TR/REC-html40/loose.dtd" > HTML 4.0 Frameset DTD (определение для кадров) включает все, что включено в переходное DTD, а также кадры. Для документов, использующих это DTD, используйте такое объявление типа: <! DOCTYPE HTML PUBLIC " -//W3C//DTD HTML 4.0 Frameset//EN" " http: //www.w3.org/TR/REC-html40/frameset.dtd" > URI в каждом объявлении типа документа позволяет браузерам загрузить DTD и все необходимые entity sets. Следующие URI указывают на DTD и entity sets для HTML 4.0, поддерживаемого W3C: " http: //www.w3.org/TR/REC-html40/strict.dtd" — строгое DTD по умолчанию " http: //www.w3.org/TR/REC-html40/loose.dtd" — переходное DTD " http: //www.w3.org/TR/REC-html40/frameset.dtd" — DTD для документов, использующих кадры " http: //www.w3.org/TR/REC-html40/HTMLlat1.ent" — Latin-1 entities " http: //www.w3.org/TR/REC-html40/HTMLsymbol.ent" — Symbol entities " http: //www.w3.org/TR/REC-html40/HTMLspecial.ent" — Special entities Связь между общими идентификаторами и файлами можно указать с использованием файла каталога, за которым следует формат, рекомендуемый Открытым консорциумом SGML. Элемент HTML <! ENTITY % html.content " HEAD, BODY" > <! ELEMENT HTML O O (%html.content; ) -- корневой элемент документа --> <! ATTLIST HTML %i18n; -- lang, dir --> Начальный тэг: не обязательный, Конечный тэг: не обязательный. Определения атрибутов версия = cdata[CN] Нежелателен. Значение этого атрибута указывает версию HTML DTD, которой подчиняется этот документ. Этот атрибут является нежелательным, поскольку он является избыточным при наличии информации о версии, указываемой в объявлении типа документа. Атрибуты, определяемые в любом другом месте lang (информация о языке), dir (направление текста) После объявления типа документа остальная часть документа HTML содержится в элементе HTML. Таким образом, типичный документ HTML имеет такую структуру: <! DOCTYPE HTML PUBLIC " -//W3C//DTD HTML 4.0//EN" " http: //www.w3.org/TR/REC-html40/strict.dtd" > < HTML> ...Здесь идут заголовок, тело и т.д... < /HTML> Заголовок документа Элемент HEAD <! -- %head.misc;, определенный ранее как " SCRIPT|STYLE|META|LINK|OBJECT" --> <! ENTITY % head.content " TITLE & BASE? " > <! ELEMENT HEAD O O (%head.content; ) +(%head.misc; ) — заголовок документа --> <! ATTLIST HEAD %i18n; -- lang, dir -- profile %URI; #IMPLIED -- каталог метаинформации --> Начальный тэг: не обязателен. Конечный тэг: не обязателен. Определения атрибутов profile = uri [CT] Этот атрибут указывает местоположение одного или нескольких профилей метаданных, отделяемых пробелами. Для расширения в будущем браузеры должны предполагать, что значение является списком, хотя в как правило значащим считается только первый URI. Атрибуты, определяемые в любом другом месте lang (информация о языке), dir (направление текста) Элемент HEAD содержит информацию о текущем документе, такую как заголовок, ключевые слова, которые могут использоваться поисковыми машинами, и другие данные, которые не считаются содержимым документа. Браузеры обычно не используют при генерации элементы из раздела HEAD. Однако они могут предоставлять пользователям информацию из раздела HEAD с помощью своих собственных механизмов. Элемент TITLE <! -- Элемент TITLE не считается частью текста. Он должен отображаться, например, в качестве заголовка страницы или окна. В документе должен быть ровно один заголовок. --> <! ELEMENT TITLE — — (#PCDATA) -(%head.misc; ) -- document title --> <! ATTLIST TITLE %i18n> Начальный тэг: обязателен. Конечный тэг: обязателен. Атрибуты, определяемые в любом другом месте lang (информация о языке), dir (направление текста) Каждый документ HTML должен иметь элемент TITLE в разделе HEAD. Авторы должны использовать элемент TITLE для идентификации содержимого документа. Поскольку пользователи часто обращаются к документам за пределами контекста, авторам следует обеспечивать заголовки в широком контексте. Таким образом, вместо заголовков типа «Введение», ничего не говорящих о контексте, авторам следует использовать заголовки типа «Введение в средневековое пчеловодство». Из соображений доступности браузеры всегда должны делать содержимое элемента TITLE доступным пользователям (включая элементы TITLE в кадрах). Механизм этого зависит от браузера (например, в виде заголовка или произносимый). Заголовки могут включать character entities (для символов со знаком ударения, специальных символов и т.д.), но не могут содержать другой разметки. Вот образец заголовка документа: <! DOCTYPE HTML PUBLIC " -//W3C//DTD HTML 4.0//EN" " http: //www.w3.org/TR/REC-html40/strict.dtd" > < HTML> < HEAD> < TITLE> Исследование динамики популяции < /TITLE> ... другие элементы заголовка... < /HEAD> < BODY> ... тело документа... < /BODY> < /HTML> Атрибут title Определения атрибутов title = text [CS] Этот атрибут предлагает информацию об элементе, для которого он устанавливается. В отличие от элемента TITLE, который предоставляет информацию обо всем документе и может присутствовать в тексте только один раз, атрибут title может сопровождать любое число элементов. Узнать, поддерживает ли элемент этот атрибут, можно в определении элемента. Значения атрибута title могут использоваться браузерами в генерации изображения по-разному. Например, визуальные браузеры часто отображают заголовок как подсказку (краткое сообщение, которое появляется, если вы указываете на объект). Аудио-браузеры могут проговаривать информацию заголовка. Например, установка этого атрибута для ссылки позволяет браузерам (визуальным и невизуальным) сообщить пользователям о природе связанного ресурса: ...текст... Вот фотография < A href=" http: //someplace.com/neatstuff.gif" title=" Me scuba diving" > как я нырял в прошлом году < /A> ...еще текст... Атрибут title играет дополнительную роль при использовании с элементом LINK для назначения внешней таблицы стилей. Для улучшения качества синтеза речи в случае плохой обработки стандартными механизмами будущие версии HTML могут включать атрибут для кодирования фонематической информации. Метаданные HTML позволяет авторам указывать метаданные — информацию о документе вместо содержимого документа — множеством способов. Например, чтобы указать автора документа, можно использовать элемент META следующим образом: < META name=" Author" content=" Иван Иванов" > Элемент META задает свойство (здесь «Author (Автор)») и назначает ему значение (здесь — «Иван Иванов»). Значение свойства и набор допустимых значений этого свойства должны определяться в относительном словаре, называемом профилем. Например, профиль, разработанный для помощи в индексировании документов для поисковых машин может определять такие свойства как « author », « copyright », « keywords » и т.д. Задание метаданных В общем случае задание метаданных состоит из двух шагов:
Помните, что поскольку профиль определяется для элемента HEAD, этот профиль применяется ко всем элементам META и LINK в заголовке документа. Браузеры не обязательно должны поддерживать механизмы метаданных. Элемент META <! ELEMENT META — O EMPTY <! ATTLIST META -- общая метаинформация --> %i18n; -- lang, dir, для использования с содержимым --http-equiv NAME #IMPLIED -- имя заголовка ответа HTTP --name NAME #IMPLIED -- имя метаинформации --content CDATA #REQUIRED — связанная информация --scheme CDATA #IMPLIED -- выбор формы содержимого --> Начальный тэг: обязателен. Конечный тэг: запрещен. Определения атрибутов Для следующих атрибутов допустимые значения и их интерпретация зависят от профиля: name = name [CS] Этот атрибут определяет имя свойства. content = cdata [CS] Этот атрибут определяет значение свойства. scheme = cdata [CS] Этот атрибут дает имя схеме, используемой для интерпретации значения свойства. http-equiv = name [CI] Этот атрибут может использоваться вместо атрибута name. Серверы HTTP используют этот атрибут для сбора информации для заголовков сообщений ответов HTTP. Популярное:
|
Последнее изменение этой страницы: 2017-03-03; Просмотров: 607; Нарушение авторского права страницы