ЭЛЕКТРОННАЯ БИБЛИОТЕКА КОАПП |
Сборники Художественной, Технической, Справочной, Английской, Нормативной, Исторической, и др. литературы. |
10 СпискиСодержание 10.1 Введение в спискиЯзык HTML предлагает авторам несколько механизмов создания списков информации. В каждом списке должен быть один или несколько элементов списков. Списки могут содержать:
Предыдущий список, например, не упорядочен, он создан с помощью элемента UL: <UL> <LI>Неупорядоченную информацию. <LI>Упорядоченную информацию. <LI>Определения. </UL> Упорядоченный список, создаваемый с помощью элемента OL, может содержать информацию, в которой важен порядок, например, рецепт:
Списки определений, создаваемые с помощью элемента DL, могут содержать ряд пар термин/определение (хотя списки определений могут иметь и иные применения). Например, список определений можно использовать в рекламе изделия:
На языке HTML он определяется следующим образом: <DL> <DT><STRONG>Низкая цена</STRONG> <DD> Новая модель этого изделия существенно дешевле предыдущей! <DT><STRONG>Проще работа</STRONG> <DD>Мы изменили изделие, так что с ним теперь легко работать! <DT><STRONG> Безопасно для детей </STRONG> <DD> Вы можете оставить своих детей в комнате, и изделие не причинит им вреда (не гарантируется). </DL> Списки могут быть вложенными, разные типы списков можно использовать вместе, как в следующем примере, где список определений содержит неупорядоченный список (ингредиенты) и упорядоченный список (процедуру):
Точное представление трех типов списков зависит от агента пользователя. Не стоит использовать списки для создания отступов в тексте. Это делается с помощью таблиц стилей. 10.2 Неупорядоченные списки (UL), упорядоченные списки (OL) и элементы списков (LI)<!ELEMENT UL - - (LI)+ -- неупорядоченный список --> <!ATTLIST UL %attrs; -- %coreattrs, %i18n, %events -- > <!ELEMENT OL - - (LI)+ -- упорядоченный список --> <!ATTLIST OL %attrs; -- %coreattrs, %i18n, %events -- > Начальный тег: обязателен, Конечный тег: обязателен <!ELEMENT LI - O (%flow;)* -- элемент списка --> <!ATTLIST LI %attrs; -- %coreattrs, %i18n, %events -- > Начальный тег: обязателен, Конечный тег: не обязателен Определения атрибутов
Атрибуты, определяемые в любом другом месте Упорядоченные и неупорядоченные списки генерируются одинаково за исключением того, что визуальные агенты пользователей нумеруют упорядоченные списки. Агенты пользователей могут представлять эти номера несколькими способами. Элементы неупорядоченного списка не нумеруются. Оба эти типа списков состоят из последовательностей элементов списков, определяемых элементом LI (конечный тег которого можно опустить). В этом примере показана общая структура списка. <UL> <LI> ... первый элемент списка... <LI> ... второй элемент списка... ... </UL> ПРИМЕР НЕЖЕЛАТЕЛЬНОГО ИСПОЛЬЗОВАНИЯ: <UL> <LI> ... Уровень один, номер один... <OL> <LI> ... Уровень два, номер один... <LI> ... Уровень два, номер два... <OL start="10"> <LI> ... Уровень три, номер один... </OL> <LI> ... Уровень два, номер три... </OL> <LI> ... Уровень один, номер два... </UL> Информация о порядке номеров. В упорядоченных списках невозможно продолжать нумерацию автоматически из предыдущего списка или убрать нумерацию для некоторых элементов. Однако авторы могут пропустить несколько элементов списка, установив для них атрибут value. Нумерация для последующих элементов списка продолжается с нового значения. Например: <ol> <li value="30"> элемент списка номер 30. <li value="40"> элемент списка номер 40. <li> элемент списка номер 41. </ol> 10.3 Списки определений: элементы DL, DT и DD<!-- списки определений - DT - термин, DD - его определение --> <!ELEMENT DL - - (DT|DD)+ -- список определений --> <!ATTLIST DL %attrs; -- %coreattrs, %i18n, %events -- > Начальный тег: обязателен, Конечный тег: обязателен <!ELEMENT DT - O (%inline;)* -- термин --> <!ELEMENT DD - O (%flow;)* -- определение --> <!ATTLIST (DT|DD) %attrs; -- %coreattrs, %i18n, %events -- > Начальные тег: обязателен, Конечный тег: не обязателен Атрибуты, определяемые в любом другом месте Списки определений незначительно отличаются от других типов списков - тем, что элементы состоят из двух частей: термина и определения. Термин обозначается с помощью элемента DT и может иметь только встроенное содержимое. Описание указывается с помощью элемента DD, имеющим содержимое уровня блока. Пример: <DL> <DT>Dweeb <DD>young excitable person who may mature into a <EM>Nerd</EM> or <EM>Geek</EM> <DT>Cracker <DD>hacker on the Internet <DT>Nerd <DD>male so into the Net that he forgets his wife's birthday </DL> Вот пример с несколькими терминами и определениями: <DL> <DT>Center <DT>Centre <DD> A point equidistant from all points on the surface of a sphere. <DD> In some field sports, the player who holds the middle position on the field, court, or forward line. </DL> Другим применением элемента DL, например, может быть разметка диалогов, где каждый элемент DT означает говорящего, а в каждом элементе DD содержатся его слова. 10.3.1 Визуальное отображение списковПримечание.Ниже приводится информативное описание поведения некоторых имеющихся на настоящий момент визуальных агентов пользователей при форматировании списков. Таблицы стилей предоставляют большие возможности управления форматированием списков (например, в отношении нумерации, соглашений, используемых в разных языках, отступов и т.д.). Визуальные агенты пользователей обычно сдвигают вложенные списки соответственно уровню вложенности. Для элементов OL и UL атрибут type определяет параметры генерации для визуальных агентов пользователей. Для элемента UL возможными значениями атрибута type являются disc, square и circle. Значение, используемое по умолчанию, зависит от уровня вложенности текущего списка. Эти значения не учитывают регистр. Представление каждого значения зависит от агента пользователя. Агенты пользователей должны пытаться представлять "disc" в виде небольшого заполненного кружка, "circle" - в виде окружности, а "square" в виде небольшого квадрата. Графические агенты пользователь могут генерировать их как: для значения "disc" Для элемента OL возможные значения атрибута type приведены в следующей таблице (они учитывают регистр):
Помните, что использование атрибута type нежелательно, и стили списков должны определяться с помощью таблиц стилей. Например, с помощью CSS можно указать, что стиль нумерации для элементов списка в нумерованном списке - римские цифры нижнего регистра. В приведенном ниже примере каждый элемент OL, принадлежащий классу "withroman", обозначается римской цифрой. <STYLE type="text/css"> OL.withroman { list-style-type: lower-roman } </STYLE> <BODY> <OL class="withroman"> <LI> Шаг один ... <LI> Шаг два ... </OL> </BODY> Генерация списка определений также зависит от агента пользователя. Например, список: <DL> <DT>Dweeb <DD>young excitable person who may mature into a <EM>Nerd</EM> or <EM>Geek</EM> <DT>Cracker <DD>hacker on the Internet <DT>Nerd <DD>male so into the Net that he forgets his wife's birthday </DL> может генерироваться следующим образом: Dweeb young excitable person who may mature into a Nerd or Geek Cracker hacker on the Internet Nerd male so into the Net that he forgets his wife's birthday 10.4 Элементы DIR и MENUИспользование элементов DIR и MENU нежелательно. Формальное определение см. в Переходном DTD. Атрибуты, определяемые в любом другом месте Элемент DIR предназначался для создания многостраничных списков каталогов. Элемент MENU предназначался для использования в списках меню, состоящих из одного столбца. Оба эти элемента имеют ту же структуру, что и элемент UL, различаясь только при генерации. На практике агенты пользователей генерируют списки DIR или MENU точно так же, как список UL. Настоятельно рекомендуется использовать вместо этих элементов элемент UL. |