7.3 Списки Definition: элементы DL, DT и DD

<!-- списки определений - DT - термин, DD - его определение -->

<!ELEMENT DL - - (DT|DD)+              -- список definition -->
<!ATTLIST DL
  %attrs;                              -- %coreattrs, %i18n, 
events --
  >

Начальный тег: необходим, Конечный тег: необходим

<!ELEMENT DT - O (%inline;)*           -- термин -->
<!ELEMENT DD - O (%flow;)*             -- описание термина -->
<!ATTLIST (DT|DD)
  %attrs;                              -- %coreattrs, %i18n, 
events --
  >      

Начальный тег: необходим, Конечный тег: не обязателен

Атрибуты, определённые в другом месте

  • id, class (идентификаторы документа)
  • lang (язык), dir (направление текста)
  • title (заголовок элемента)
  • style (инлайн-стиль)
  • onclick, ondblclick, onmousedown, onmouseup, onmouseover, onmousemove, onmouseout, onkeypress, onkeydown, onkeyup (внутренние события)

Списки определений лишь немного отличаются от других типов списка тем, что их элемент состоит из двух частей: термина и его описания. Термин задаётся элементом DT и ограничен как инлайн-содержимое. Описание задаётся элементом DD, содержимое которого — уровня блока.

Вот пример:

<DL>
  <DT>Dweeb
  <DD>young excitable person who may mature
    into a <EM>Nerd</EM> or <EM>Geek</EM>
 
  <DT>Hacker
  <DD>a clever programmer
 
  <DT>Nerd
  <DD>technically bright but socially inept person
 
</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 содержит его/её слова.

Визуальное представление списков

И для OL, и для UL атрибут type определяет опции отображения визуальными ПА.

Для элемента UL возможные значения атрибута type — disc, square и circle. Значения по умолчанию зависят от уровня вложения. Эти значения нечувствительны к регистру.

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

для значения «disc»

для значения «circle»

для значения «square»

Для элемента OL возможные значения атрибута type суммированы в таблице (значения чувствительны к регистру):

Type/Тип Стиль нумерации
1 арабские цифры 1, 2, 3, …
a латинский алфавит, нижний регистр a, b, c, …
A латинский алфавит, верхний регистр A, B, C, …
i римский алфавит, нижний регистр i, ii, iii, …
I римский алфавит, верхний регистр I, II, III, …

Обратите внимание, что атрибут type не рекомендуется применять, и стили списков должны обрабатываться таблицами стилей.

Например, используя CSS (Каскадную Таблицу Стилей), можно определить, что стиль нумерации элементов списка должен быть — римские цифры в нижнем регистре. В нижеследующем примере каждый элемент OL, принадлежащий к классу «withroman», будет иметь римскую нумерацию перед началом каждого элемента списка.

<STYLE type="text/css">
OL.withroman { list-style-type: lower-roman }
</STYLE>
<BODY>
<OL class="withroman">
<LI> Step one ...  
<LI> Step two ...
</OL>
</BODY>        

Пример:

<DL>
  <DT>Dweeb
  <DD>young excitable person who may mature
    into a <EM>Nerd</EM> or <EM>Geek</EM>
 
  <DT>Hacker
  <DD>a clever programmer
 
  <DT>Nerd
  <DD>technically bright but socially inept person
</DL>

может быть отображено так:

Dweeb
       young excitable person who may mature into a Nerd or Geek
Hacker
       a clever programmer
Nerd
       technically bright but socially inept person