Нумерованные списки представляют собой набор элементов с их порядковыми номерами. Вид и тип нумерации зависит от атрибутов тега
-
, который и применяется для создания списка. Каждый пункт нумерованного списка обозначается тегом
-
, как показано ниже.
- Первый пункт
- Второй пункт
- Третий пункт
Если не указывать никаких дополнительных атрибутов и просто написать тег
-
, то по умолчанию применяется список с арабскими числами (1, 2, 3,...), как показано в примере 11.3.
- создание пунктуальности (никогда не будете никуда опаздывать);
- излечение от пунктуальности (никогда никуда не будете торопиться);
- изменение восприятия времени и часов.
- арабские числа (1, 2, 3, ...);
- прописные латинские буквы (A, B, C, ...);
- строчные латинские буквы (a, b, c, ...);
- прописные римские числа (I, II, III, ...);
- строчные римские числа (i, ii, iii, ...).
- Король Магнум XLIV
- Король Зигфрид XVI
- Король Сигизмунд XXI
- Король Хусбрандт I
- в том месте, где встречается
-
, браузер автоматически добавляет перенос строки;
- у списка имеются отступы сверху и снизу;
- маркеры по умолчанию отображаются в виде закрашенного кружка;
- каждый элемент списка сдвигается вправо по отношению к основному тексту.
- disc - маркеры в виде закрашенного кружка;
- circle - маркеры в виде незакрашенного кружка;
- square - квадратные маркеры.
- Сепульки
- Сепулькарии
- Сепуление
- не получится, поэтому придётся действовать в обход. Для этого прячем маркеры списка с помощью свойства list-style со значением none и в тексте перед содержимым
-
добавляем свой собственный символ с помощью псевдоэлемента ::before
. В примере 2 в качестве такого маркера выступает треугольник.
Пример 2. Использование::before
Списки - Сепульки
- Сепулькарии
- Сепуление
Результат данного примера показан на рис. 2. Поскольку использование свойства list-style со значением none не убирает маркеры совсем, а только скрывает их от просмотра, то список получается смещённым вправо. Чтобы избавиться от этой особенности, в примере добавляется свойство text-indent с отрицательным значением. Его задача - переместить текст левее на один символ.
Рис. 2. Произвольные маркеры в списке
Символ не обязательно должен быть в шестнадцатеричном формате, его можно вставить и непосредственно в текст. Главное, сохранить документ в кодировке UTF-8 и чтобы редактор её поддерживал. Сами символы и их коды можно взять, например, из LibreOffice Writer (рис. 3).
Рис. 3. Выбор символа в LibreOffice
Список с рисованными маркерами
Стили позволяют установить в качестве маркера любое подходящее изображение через свойство list-style-image . В качестве значения используется относительный или абсолютный путь к графическому файлу, как показано в примере 3.
Пример 3. Использование изображения в качестве маркера
Списки - Сепульки
- Сепулькарии
- Сепуление
Рисунок лучше всего выбирать небольшого размера, чтобы не превращать элементы списка в подрисуночные подписи. На рис. 4 показан результат действия примера по использованию в качестве маркеров небольших картинок.
Рис. 4. Рисунок в качестве маркера
Применение list-style-image обладает некоторыми недостатками:
- рисунок нельзя сдвинуть вверх или вниз;
- в разных браузерах положение рисунка относительно текста может отличаться.
Этих недочётов можно избежать с помощью свойства background , оно устанавливает фоновое изображение. Для каждого элемента списка
-
мы убираем исходные маркеры и устанавливаем фоновую картинку без повторения. А чтобы текст не выводился поверх рисунка, смещаем его вправо через padding-left
(пример 4).
Пример 4. Использование background
Ul { margin-left: -1em; } li { list-style: none; background: url(images/bullet.png) no-repeat 0 2px; padding-left: 20px; }
Положение текста и маркера
Существует два способа размещения маркера относительно текста: маркер выносится за границу элементов списка или обтекается текстом (рис. 5).
inside outside Рис. 5. Размещение маркеров относительно текста
Чтобы управлять положением маркеров, применяется свойство list-style-position . Оно имеет два значения: outside - маркеры размещаются за пределами текстового блока (это значение по умолчанию) и inside - маркеры являются частью текстового блока и отображаются в элементе списка (пример 5).
Пример 5. Изменение положения маркеров
Списки - Перед началом работы проверьте наличие оборудования, входящего в комплект 3BM.
- При отсутствии одного или нескольких периферийных устройств следует сразу же обратиться к техническому персоналу ВЦ.
- После осмотра визуальными методами своего рабочего места можно осторожно включить питание 3BM.
Результат данного примера показан на рис. 6.
Другим типом списков, реализованных в языке HTML, является нумерованный список. Иначе HTML списки такого типа называют упорядоченными. Последнее название часто используется как формальный перевод названия соответствующего тега
- , с помощью которого и организуются списки такого типа в HTML-документах (OL - Ordered List, упорядоченный список).
- .
Приведем пример HTML-документа, использующего нумерованный список, отображение которого браузером показано на рис. 2.3.
Пример нумерованного списка Наиболее яркие звезды, видимые с Земли:
- Сириус
- К анопус
- Арктур
- Альфа Центавра
- Вега
- К апелла
- Ригель
- Процион
- Ахернар
- Бета Центавра
- Ветельгейзе
- Альдебаран
- Мицар
- Пoляpнaя
Рис. 2.З. Нумерованный список
В теге
- могут быть указаны следующие параметры: COMPACT, TYPE и START.
- .
Пример записи:
- .
Параметр START тега
- позволяет начать нумерацию списка не с единицы. В качестве значения параметра START всегда должно указываться натуральное число,
вне зависимости от вида нумерации списка. Приведем пример:
- для нумерованных списков разрешает использовать параметры TYPE и VALUE. Параметр TYPE
может прини
мать такие же значения, как и для тега
- .
- .
Примечание
Браузеры по-разному интерпретируют указание вида нумерации для отдельного элемента списка. Браузер Netscape изменяет вид нумерации для данного элемента и всех последующих, пока не встретится очередное переопределение. Браузер Internet Explorer изменяет вид номера только для данного элемента.
З начение параметра VALUE тега
- - позволяет изменить номер данного элем
ента списка. При этом изменяется нумерация и всех последующих элементов. Типичным применением являются списки с пропуском некоторых
эл
ементов. Пример такого списка был приведен выше
(рис. 2.3). В нем дается уп
орядоченный список наиболее ярких звезд, в котором на 58 и 75 местах
р
асположены звезды, хорошо видимые в наших широтах (Мицар - наиболее
яркая звезда созвездия Большая Медведица, а Полярная звезда - Малой
Медведицы).
Приведем еще один оригинальный пример использования нумерации различных видов. В приводимом ниже HTML-коде заданы три списка с различной нумерацией. Для удобства просмотра каждый из списков помещен в отдельную ячейку таблицы. Все три списка идентичны и различаются только видом нумерации: в первом столбце таблицы - арабские цифры, во втором - римские, а в третьем нумерация ведется латинскими буквами. Обратим внимание, что элементы списка пусты, т. е. после любого тега
- нет никаких данных. Пример такого рода можно использовать в качестве таблицы соответствия между записью чисел арабскими и римскими цифрами. Оказывается, что любой браузер, поддерживающий списки, можно использовать в качестве генератора такой таблицы (рис. 2.4), стоит лишь набрать приводимый HTML-код. Нумерация римскими цифрами правильно работает вплоть до значения 3999. Изучая правый столбец, можно понять, как выполняется нумерация латинскими буквами. По исчерпании однобуквенной нумерации (от А до Z) в качестве следующего номера берется первый двухбуквенный номер - АА и т. д.
Использование различного типа нумерации в списках
П ример записи:
- .
- .
Такая запись определяет нумерацию списка с прописной латинской буквы "E". Для других видов нумерации запись START=5 задаст нумерацию, соответственно, с числа "5", римской цифры "V" и т. д.
Изменение вида нумерации списка и значений номеров допустимо производи ть и для любого элемента списка. Тег
- для нумерованных списков разрешает использовать параметры TYPE и VALUE. Параметр TYPE
может прини
мать такие же значения, как и для тега
Параметр COMPACT имеет тот же смысл, что и у маркированных списков. Параметр TYPE используется для задания вида нумерации списка. Может принимать следующие значения:
TYPE = А - задает маркеры в виде прописных латинских букв;
TYPE = а - задает маркеры в виде строчных латинских букв;
TYPE = I - задает маркеры в виде больших римских цифр;
TYPE = i - задает маркеры в виде маленьких римских цифр;
TYPE = 1 - задает маркеры в виде арабских цифр.
По умолчанию всегда используется значение TYPE = 1, т. е. нумерация при помощи арабских цифр. Это касается и вложенных нумерованных списков. Здесь, в отличие от маркированных списков, браузеры по умолчанию не делают различной нумерацию на различных уровнях вложенности списков. Заметим, что после номера элемента списка всегда дополнительно выводится знак "точка".
Параметр TYPE с теми же значениями может употребляться для указания вила нумерации отдельных элементов списка. Для этого параметр TYPE с соответствующим значением разрешено указывать в теге элемента списка
Списки данного типа обычно представляют собой упорядоченную последовательность отдельных элементов. Отличием от маркированных списков является то, что в нумерованном списке перед каждым его элементом автоматически проставляется порядковый номер. Вид нумерации зависит от браузера и может задаваться параметрами тегов списка. В остальном реализация нумерованных списков во многом похожа на реализацию маркированных списков.
Теги
- и
Для создания нумерованного списка следует использовать тег-контейнер , внутри которого располагаются все элементы списка. Открывающий и закрывающий теги списка обеспечивают перевод строки до и после списка, отделяя таким образом список от основного содержимого документа.
Как и для маркированного списка, каждый элемент нумерованного списка должен начинаться тегом
Пример 11.3. Создание нумерованного списка
Нумерованный список Работа со временем
Результат данного примера показан на рис. 11.3.
Рис. 11.3. Вид нумерованного списка
Заметьте, что в нумерованном списке также добавляются автоматические отступы сверху, снизу и слева от текста.
В качестве нумерующих элементов могут выступать следующие значения:
Для указания типа нумерованного списка применяется атрибут type тега
-
. Его возможные значения приведены в табл. 11.2.
Табл. 11.2. Типы нумерованного списка
Тип списка Код HTML Пример Арабские числа
1. Чебурашка
2. Крокодил Гена
3. ШапоклякПрописные буквы латинского алфавита
A. Чебурашка
B. Крокодил Гена
C. ШапоклякСтрочные буквы латинского алфавита
a. Чебурашка
b. Крокодил Гена
c. ШапоклякРимские числа в верхнем регистре
I. Чебурашка
II. Крокодил Гена
III. ШапоклякРимские числа в нижнем регистре
i. Чебурашка
ii. Крокодил Гена
iii. ШапоклякЧтобы начать список с определенного значения, используется атрибут start тега
-
. При этом не имеет значения, какой тип списка установлен с помощью type
, атрибут start
одинаково работает и с римскими и с арабскими числами. В примере 11.4 показано создание списка с использованием римских цифр в верхнем регистре, начинающихся с восьми.
Пример 11.4. Нумерация списка
Римские числа Результат данного примера показан на рис. 11.4.
Рис. 11.4. Нумерованный список с римскими числами
Маркированные списки позволяют разбить большой текст на отдельные блоки, каждый из которых начинается с маркера - обычно в его качестве выступает небольшая точка. Это привлекает внимание читателя к тексту и повышает его читабельность.
С элементом
-
связаны следующие особенности:
На рис.1 показан результат примера, иллюстрирующий приведённые особенности маркированного списка.
Рис. 1. Вид маркированного списка
Вид маркера
Маркеры могут принимать один из трёх видов: закрашенный кружок (по умолчанию), незакрашенный кружок и квадрат. Для выбора типа маркера используется свойство list-style-type или универсальное list-style (пример 1). Применяются следующие значения:
Пример 1. Изменение вида маркера
Списки В примере показано создание маркированного списка, где в качестве значка маркера используется небольшой однотонный квадрат. Хотя количество значений ограничено тремя, это не значит, что в нашем распоряжении всего три вида маркера. Существует множество спецсимволов, которые с успехом могут выступать в качестве значка маркера. «Прикрутить» их непосредственно к