Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
3 Об SGML и HTML.doc
Скачиваний:
2
Добавлен:
22.11.2019
Размер:
330.75 Кб
Скачать

Сущности dtd в определениях атрибутов

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

В этом примере, мы видим, что список определений атрибутов для элемента LINK начинается с параметрической сущности "%attrs;".

<!ELEMENT LINK - O EMPTY -- a media-independent link -->

<!ATTLIST LINK

%attrs; -- %coreattrs, %i18n, %events --

charset %Charset; #IMPLIED -- char encoding of linked resource --

href %URI; #IMPLIED -- URI for linked resource --

hreflang %LanguageCode; #IMPLIED -- language code --

type %ContentType; #IMPLIED -- advisory content type --

rel %LinkTypes; #IMPLIED -- forward link types --

rev %LinkTypes; #IMPLIED -- reverse link types --

media %MediaDesc; #IMPLIED -- for rendering on these media --

>

Начальный ярлык: обязателен, Заключительный ярлык: запрещен

Параметрическая сущность "%attrs;" определяется следующим образом:

<!ENTITY % attrs "%coreattrs; %i18n; %events;">

В свою очередь, параметрическая сущность "%coreattrs;" разворачивается в:

<!ENTITY % coreattrs

"id ID #IMPLIED -- document-wide unique id --

class CDATA #IMPLIED -- space separated list of classes --

style %StyleSheet; #IMPLIED -- associated style info --

title %Text; #IMPLIED -- advisory title/amplification --"

>

Параметрическая сущность "%attrs;" определена для удобства так как эти атрибуты определены для большинства типов элементов в HTML.

Аналогично DTD определяет параметрическую сущность "%URI;" которая разворачивается в строку "CDATA".

<!ENTITY % URI "CDATA"

-- a Uniform Resource Identifier,

see [URI]

-->

Как видно из этого примера, параметрическая сущность "%URI;" предоставляет читателям больше информации о том какого типа данные ожидаются для атрибута. Похожие сущности определены для [цвета] "%Color;", [набора символов] "%Charset;", [длины] "%Length;", [пикселей] "%Pixels;", и т.п.

Булевы атрибуты

Некоторые атрибуты играют роль булевых переменных (например, атрибут selected [выбран] для элемента OPTION). Их появление на начальном ярлыке элемента означает что значение атрибута есть "правда". Их отсутствие означает значение "ложь".

Булевы атрибуты могут законно принимать единственное значение: имя самого атрибута (например, selected="selected").

Этот пример определяет атрибут selected как булев атрибут.

selected (selected) #IMPLIED -- reduced inter-item spacing --

Атрибут принимает значение "правда" так как он указан на начальном ярлыке элемента:

<OPTION selected="selected">

...содержание...

<OPTION>

В HTML, булевы атрибуты могут указыватся в сокращенной форме -- значение атрибута приводится само по себе на начальном ярлыке элемента. Таким образом, атрибут selected может быть установлен посредством:

<OPTION selected>

вместо:

<OPTION selected="selected">

Авторам следует иметь в виду, что многие средства просмотра распознают только сокращенную форму булевых атрибутов и не распознают полную форму.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]