На главную страницу
Форум txt.version   




Статья :: Списки в документах HTML

10  Списки


10.1
  Введение

HTML предлагает авторам несколько механизмов спецификации информации в списках. Все списки должны содержать не менее одного элемента списка. Список может содержать:
  • неупорядоченную информацию;
  • упорядоченную информацию;
  • Определения/Definitions.

Предыдущий список, например, это неупорядоченный список, созданный элементом UL:

<UL>
<LI>неупорядоченную информацию;
<LI>упорядоченную информацию;
<LI>Определения/Definitions. 
</UL>

Упорядоченный список, созданный с использованием элемента OL, должен содержать информацию, как этот порядок может быть установлен, как в рецепте:

  1. Mix dry ingredients thoroughly.
  2. Pour in wet ingredients.
  3. Mix for 10 minutes.
  4. Bake for one hour at 300 degrees.

Списки определений, создаваемые элементом DL, обычно состоят из последовательности пар термин/его определение. Таким образом, представляя продукт, можно использовать список определений:

Lower cost
The new version of this product costs significantly less than the previous one!
Easier to use
We've changed the product so that it's much easier to use!
Safe for kids
You can leave your kids alone in a room with this product and they won't get hurt (not a guarantee).

что выглядит в  HTML так:

<DL>
<DT><STRONG>Lower cost</STRONG>
<DD>The new version of this product costs significantly less than the
previous one!
<DT><STRONG>Easier to use</STRONG>
<DD>We've changed the product so that it's much easier to use!
<DT><STRONG>Safe for kids</STRONG>
<DD>You can leave your kids alone in a room with this product and
they won't get hurt (not a guarantee).
</DL>

Списки также могут вкладываться, при этом списки разных типов можно использовать вместе, как в следующем примере, который является списком определений, содержащим неупорядоченный список (the ingredients) и упорядоченный список (the procedure):

The ingredients:
  • 100 g. flour
  • 10 g. sugar
  • 1 cup water
  • 2 eggs
  • salt, pepper
The procedure:
  1. Mix dry ingredients thoroughly.
  2. Pour in wet ingredients.
  3. Mix for 10 minutes.
  4. Bake for one hour at 300 degrees.
Notes:
The recipe may be improved by adding raisins.

Точное представление списков этих трёх типов зависит от ПА. Мы предостерегаем авторов от использования списков только для вывода текста с отступами. Это вопрос стиля, и он должен соответственно решаться в таблицах стилей.


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 --
  >

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

Определения атрибутов

type  =  информация о стиле [CI]
Не рекомендуется. Этот атрибут устанавливает стиль элемента списка. Доступные в настоящее время значения касаются визуальных ПА. Возможные значения описаны ниже (вместе с информацией о регистре).
start = number [CN]
Не рекомендуется. Только для OL. Этот атрибут устанавливает номер первого элемента упорядоченного списка. По умолчанию это "1". Заметьте, что, хотя значением этого атрибута является целое число, соответствующие лэйблы могут быть нечисловыми.
Так, если стиль элемента списка это латинские буквы в верхнем регистре (A, B, C, ...), start=3 означает "C".
Если стиль - это римские цифры в нижнем регистре, start=3 означает "iii" и т.д.
value = number [CN]
Не рекомендуется. Только для LI. Этот атрибут устанавливает номер текущего элемента списка. Заметьте, что, хотя значением этого атрибута является целое число, соответствующие лэйблы могут быть нечисловым (см. атрибут start).
compact [CI]
Не рекомендуется. Если установлен, этот булев атрибут подсказывает визуальному ПА, что список нужно отображать более компактно. Интерпретация этого атрибута зависит от ПА.

Упорядоченные и неупорядоченные списки отображаются идентичными способами, за исключением того, что визуальные ПА нумеруют элементы упорядоченных списков. ПА могут представлять нумерацию разными способами. Элементы неупорядоченных списков не нумеруются.

Списки обоих типов состоят из последовательности элементов списка, определённых элементом LI (с отсутствующим конечным тегом).

Этот пример иллюстрирует базовую структуры списков:

<UL>
   <LI> ...первый элемент списка...
   <LI> ...второй элемент списка...
   ...
</UL>

Списки также могут быть вложенными:

НЕ РЕКОМЕНДУЕТСЯ:

<UL>
     <LI> ... Уровень 1, номер 1 ...
     <OL> 
        <LI> ... Уровень 2, номер 1 ...
        <LI> ... Уровень 2, номер 2 ...
        <OL start="10"> 
           <LI> ... Уровень 3, номер 1 ...
        </OL> 
        <LI> ... Уровень 2, номер 3 ...
     </OL> 
     <LI> ... Уровень 1, номер 2 ...
</UL>

Детали. В упорядоченных списках невозможно продолжить автоматически нумерацию списка после предыдущего списка или скрыть нумерацию некоторых элементов списка. Однако, авторы могут сбросить номер элемента списка установкой его атрибута value. Нумерация начинается с нового для списка элементов значения. Например:

<ol>
<li value="30"> устанавливает номер элемента 30.
<li value="40"> устанавливает номер элемента 40.
<li> установлен номер элемента 41.
</ol>


10.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 --
  >

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

Списки определений лишь немного отличаются от других типов списка тем, что их элемент состоит из двух частей: термина и его описания. Термин задаётся элементом  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 содержит его/ её слова.

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

Примечание. Это информативное описание поведения некоторых существующих визуальных ПА при форматировании списков. Таблицы стиля дают авторам большие возможности управления форматированием списков (напр., по нумерации, зависящим от языка соглашениям, отступам и т.д.).

Визуальные ПА обычно осуществляют отступ вложенных списков с учётом текущего уровня вложенности.

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

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

Представление каждого значения зависит от ПА. ПА должны пытаться представить "disc" как маленький заполненный кружок, "circle" как маленький круг и "square" как маленький квадрат.

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

A possible rendering of a disc для значения "disc"
A possible rendering of a circle для значения "circle"
A possible rendering of a square для значения "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>

Представление списков Definition также зависит от ПА. Пример:

<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

10.4 Элементы DIR  и  MENU

DIR и MENU не рекомендуются.

См. формальное определение в  Transitional/Переходном ОТД.

Элемент DIR был разработан для создания списка из нескольких столбцов. Элемент MENU был разработан для создания списка в один столбец. Оба элемента имеют ту же структуру, что и UL, но другое представление. На практике, ПА будет рассматривать списки DIR или MENU как список UL.

Мы настоятельно рекомендуем использовать UL вместо этих элементов.

 

Списки в документах HTML

страницы в данном разделе 
 О спецификации HTML 4  Индекс атрибутов HTML 4
 Изменения в HTML 4  Отображение документа HTML
 Соответствие: требования и рекомендации  Информация о языке и направлении текста
  ОТД  HTML 4  Индекс элементов HTML 4
 Ссылки-мнемоники на символы в HTML 4  Формы
 frames.html  HTML 4  ОТД Набора фрэймов
 Глобальная структура документа HTML  graphics.html
 Спецификация HTML 4.01 - Основная страница  Введение в HTML 4
 Справка SGML для HTML  Гиперссылки в документах HTML
 Индекс  Списки в документах HTML
 Переходное ОТД  HTML 4  Замечания по исполнению и дизайну
 Объекты, Изображения и Аплеты в документах HTML  HTML 4 Specification References
 Скрипты (сценарии) в документах HTML  SGML-объявление HTML 4
 О SGML и HTML  Таблицы стилей в документах HTML
 Таблицы в документах HTML  Параграфы, Строки и Фразы
 Basic HTML data types   


Разделы
Околокомпьютерная литература (375)
Программирование (102)
Программы (75)
ОС и Сети (49)
Интернет (29)
Аппаратное обеспечение (16)
Базы данных (6)

Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)

PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C





 
©  programming-lang.com  справочник программиста