Маркированный список в html задается тегами. Нумерованный список

Здравствуйте, уважаемые читатели! Сегодня в качестве продолжения цикла статей рубрики «Основы html» я хочу познакомить вас с алгоритмом создания списков html при помощи тегов ul и li (маркированный список), ol и li (нумерованный список), dl, dt, dd (список определений) .

Теперь продолжу знакомить вас с наиболее часто используемыми тегами html, которые применяются для создания списков на страницах сайта. Если кто-то не знает, что это такое, наверняка после полученной ниже информации сразу поймет, о чем речь, поскольку такая форма подачи материала очень распространена.

Маркированные HTML списки - теги ul и li

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

По умолчанию внешний вид маркера представляется закрашенным кружком. Однако, можно изменить его внешний вид, применив атрибут type, который имеет следующие значения: disc, circle, square. Значение disc (которое определяет внешний вид маркера в виде закрашенного кружка) применяется по умолчанию. То есть если атрибут type не прописан, то внешний вид маркера будет выглядеть как закрашенный кружок. Если дополнить данными атрибутами тег ul, то получим следующие варианты:

Естественно, каждому маркеру отдельного элемента маркированного списка можно придать свой внешний вид, прописав соответствующие значения атрибута type.

Нумерованные HTML списки - теги ol и li

Теперь посмотрим, как образуется нумерованный список с помощью тегов ol (блочный и парный тег по аналогии с ul). В качестве тега, определяющего элементы нумерованного списка html, здесь тоже выступает тег li. Нумерованный список - совокупность пронумерованных элементов. Тип нумерации определяется атрибутом type, который может принимать следующие значения:

  • A - заглавные латинские буквы;
  • a - строчные латинские буквы;
  • I - заглавные римские цифры;
  • i - строчные римские цифры;
  • 1 - арабские цифры
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка
  1. 1 элемент нумерованного списка
  2. 2 элемент нумерованного списка
  3. 3 элемент нумерованного списка

Также можно обеспечить нумерованный список, где нумерация элементов осуществляется в обратном порядке, например: 3, 2, 1. Это осуществляется с помощью атрибута reserve тега ol.

Существует также возможность начать маркированный список не с 1, а с любого другого числа. Для этого можно воспользоваться атрибутом start, причем совершенно не важно, какое значение атрибута type установлено. Посмотрите пример использования атрибута name в совокупности с различными значениями атрибута type (1 и I):

HTML списки определений - теги dl, dd, dt

Еще один вид списков html - список определений. Он формируется следующим образом. Содержание этого списка заключается между открывающим и закрывающим тегами dl, которые образуют контейнер. Тег dt определяет какой-либо термин, а dd - описание этого термина.

Как видите, содержание тега dt, которое является каким либо термином, смещено влево, а содержание тега dd, являющееся определением данного термина, написано курсивом. Все это достигается с помощью применения различных стилей css, о которых непременно поговорим в ближайших публикациях.

Кстати, современные реалии таковы, что язык html нельзя рассматривать в отрыве от , поэтому, чтобы не пропустить эти важнейшие материалы, подпишитесь на обновление блога через RSS-ленту либо по e-mail . На этом тема сегодняшней статьи исчерпана, если вы получили необходимую информацию, не откажитесь воспользоваться кнопками социальных сетей.

В языке разметки html различают 3 вида списков - упорядоченные (нумерованные), неупорядоченные (ненумерованные) и списки определений (definition list).

Для построения такого списка нужны 2 вида элементов: ‘ul’ (сокращение от unordered list, т.е. неупорядоченный список) и ‘li’ (элемент списка). Все, что написано внутри ‘li’, помечается маркером.

Внешним видом такого списка можно управлять, задавая типы маркеров.

Типы маркеров

Есть специальный атрибут type, который ставится в обоих элементах списка. Это тип вашего маркера. Всего 3 типа: окружность, диск и квадрат:

    - квадрат
      - диск
        - окружность

        В зависимости от того, где указать тип маркера, можно поменять его у всего списка или у конкретного элемента.

        Нумерованный список (ordered list)

        Для построения списка также нужно 2 элемента: ‘ol’ и ‘li’ (элемент списка). Маркеры заменяются на цифры с точкой. Пример простого списка:

        1. первый элемент
        2. второй элемент
        3. последний элемент

        Внешним видом упорядоченного списка можно управлять, задавая разные типы нумерации.

        Типы нумерации

        Есть специальный атрибут type, который ставится в элементе ‘ol’ или ‘li’. Это тип вашего списка. Всего 5 типов:

          - Нумерация арабскими цифрами (1, 2, 3)
            - Нумерация прописными буквами (A, B, C)
              - Нумерация строчными буквами (a, b, c)
                - Нумерация большими римскими цифрами (I, II, III)
                  - Нумерация малыми римскими цифрами (i, ii, iii)
                    - С какой цифры начать нумерацию

                    В зависимости от того, где указать тип нумерации, можно поменять ее у всего списка или у конкретного элемента.

                    Список определений (definition list)

                    Список определений был разработан для словарных статей.

                    Есть общий контейнер ‘dl’. Внутри него стоят ‘dt’ (definition termin - термин) и ‘dd’ (definition description - описание). Простейший пример:

                    Отдел маркетинга
                    Данный отдел занимается продвижением товаров и услуг
                    Финансовый отдел
                    Данный отдел занимается всеми финансовыми операциями

                    Все элементы всех списков - блочные. Но внутри элемента ‘dt’ можно ставить только строчные элементы. В элементы ‘dd’ и ‘li’ можно ставить все, что угодно. Отсюда появляются вложенные списки.

                    Вложенные (смешанные списки)

                    Это многоуровневые списки, внутри которых есть иерархия. Часто такие списки применяются при построении карты сайта. Пример:

                    Смешанный список
                    НОВОСТЬ ДНЯ
                  1. Сегодня идет дождь
                  2. Дождь будет идти весь день
                    НОВОСТЬ НОЧИ
                  3. Ночью будет идти дождь
                  4. Завтра начнется новый день
                  5. Одним из типов списков, реализованных в языке HTML, является маркированный список. Иначе списки такого типа называют ненумерованными или неупорядоченными. Последнее название часто используется как формальный перевод названия соответствующего тега

                      , с помощью которого и организуются списки такого типа в HTML-документах (UL - Unordered List, неупорядоченный список).

                      В маркированном списке для выделения его элементов используются специальные символы, называемые маркерами списка (часто их называют буллетами, что является формальным озвучением английского термина bullet - пуля). Вид маркеров списка определяется браузером, причем при создании вложенных списков браузеры автоматически разнообразят вид маркеров различного уровня вложенности.

                      Теги
                        и

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


                      .

                      Каждый элемент списка должен начинаться тегом

                    • (LI - List Item, элемент списка). Тег
                    • не нуждается в соответствующем закрывающем теге, хотя его наличие в принципе не возбраняется. Браузеры обычно при отображении документа начинают каждый новый элемент списка с новой строчки.

                      Приведенных сведений достаточно для построения элементарного маркированного списка. Приведем пример HTML-документа, использующего маркированный список, отображение которого браузером показано на рис. 2.1.

                      Пример маркированного списка

                      Знаки зодиака:

                      • Овен

                      • Телец

                      • Близнецы

                      • Дева

                      • Весы

                      • Скорпион

                      • Стрелец

                      • К озерог

                      • Водолей

                      • Рыбы

                      Рис. 2.1. Отображение браузером маркированного списка

                      Заметим, что кроме элементов списка, отмечаемых тегом

                    • , могут присутствовать и другие HTML-элементы. В приведенном выше примере одним из таких элементов является обычный текст, не являющийся пунктом списка, а играющий роль его заголовка.

                      Примечание

                      В некоторых учебниках по языку HTML встречается указание, что для задания заголовка списка следует применять тег-контейнер (LH - List Header, заголовок списка). В настоящее время этот тег не распознается ни одним из распространенных браузеров и не входит в спецификацию HTML. Таким образом, его применение становится бессмысленным, хотя и не приведет к каким-либо ошибкам.

                      В теге

                        могут быть указаны два параметра: COMPACT и TYPE.

                        Параметр COMPACT записывается без значений и применяется для указания браузеру, что данный список следует выводить в компактном виде. Например, может быть уменьшен шрифт или расстояние между строчками списка и т. д.

                        Примечание

                        В настоящее время наличие параметра COMPACT в теге

                          никак не влияет на отображение списков ведущими браузерами. Поэтому применение данного параметра бессмысленно, тем более что его употребление не рекомендуется спецификацией HTML 4.0 .

                          Параметр TYPE может принимать следующие значения: disc, circle и square. Этот параметр используется для принудительного задания вида маркеров списка. Конкретный вид маркера будет зависеть от используемого браузера. Типичными вариантами отображения являются следующие:

                          TYPE = disc - маркеры отображаются закрашенными кружками; TYPE = circle - маркеры отображаются не закрашенными кружками; TYPE = square - маркеры отображаются закрашенными квадратиками. Пример записи:

                            .

                            Значением, используемым по умолчанию, является TYPE = disc. Для вложенных маркированных списков на первом уровне по умолчанию используется значение disc, на втором - circle, на третьем и далее - square. Именно так делается в последних версиях браузеров Netscape и Internet Explorer. Заметим, что иные браузеры могут иначе отображать маркеры. Например, в спецификации HTML 4.0 для вида маркера, отображаемого при значении TYPE = square, указывается незакрашенный квадратик (square outline).

                            Параметр TYPE с теми же значениями может употребляться для указания вида маркеров отдельных элементов списка. Для этого параметр TYPE с соответствующим значением разрешено указывать в теге элемента списка

                          • .

                            Пример записи:

                          • .

                            Примечание

                            Браузеры по-разному интерпретируют указание вида маркера для отдельного элемента списка. Браузер Netscape изменяет вид маркера для данного и всех последующих, пока не встретится очередное переопределение вида маркера. Браузер Internet Explorer изменяет вид маркера только для данного элемента.

                            Графические маркеры списка

                            В качестве маркеров списка можно использовать графические изображения, что широко применяется для создания привлекательных, красиво оформленных HTML-документов. На самом деле такая возможность не предоставляется непосредственно языком HTML, а реализуется несколько искусственно. Это вовсе не означает, что так делать не рекомендуется или предосудительно, а лишь означает, что здесь не будут применяться никакие специальные языковые конструкции HTML.

                            Чтобы понять идею, необходимо разобраться в механизме реализации списков на HTML-страницах. Оказывается, что тег списка

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

                              Если же нам требуется построить список с графическими маркерами, то можно вообще обойтись без тегов

                            • . Достаточно будет перед каждым элементом списка вставить желаемое графическое изображение. Единственной задачей, которую нужно при этом решить, будет отделение элементов списка друг от друга. Для этого можно использовать теги абзаца

                              Или принудительного перевода строки
                              . Пример реализации списка с графическими маркерами, отображение которого представлено на рис. 2.2, показан ниже:

                              который будет передан только один раз. Размеры файла, содержащего маленькое изображение, также крайне незначительны.

                              Примечание

                              Методы создания списков с графическими маркерами обсуждаются в свою очередь в главе 8.

                              Нумерованные списки представляют собой набор элементов с их порядковыми номерами. Вид и тип нумерации зависит от атрибутов тега

                                , который и применяется для создания списка. Каждый пункт нумерованного списка обозначается тегом
                              1. , как показано ниже.

                                1. Первый пункт
                                2. Второй пункт
                                3. Третий пункт

                                Если не указывать никаких дополнительных атрибутов и просто написать тег

                                  , то по умолчанию применяется список с арабскими числами (1, 2, 3,...), как показано в примере 11.3.

                                  Пример 11.3. Создание нумерованного списка

                                  Нумерованный список

                                  Работа со временем

                                  1. создание пунктуальности (никогда не будете никуда опаздывать);
                                  2. излечение от пунктуальности (никогда никуда не будете торопиться);
                                  3. изменение восприятия времени и часов.

                                  Результат данного примера показан на рис. 11.3.

                                  Рис. 11.3. Вид нумерованного списка

                                  Заметьте, что в нумерованном списке также добавляются автоматические отступы сверху, снизу и слева от текста.

                                  В качестве нумерующих элементов могут выступать следующие значения:

                                  • арабские числа (1, 2, 3, ...);
                                  • прописные латинские буквы (A, B, C, ...);
                                  • строчные латинские буквы (a, b, c, ...);
                                  • прописные римские числа (I, II, III, ...);
                                  • строчные римские числа (i, ii, iii, ...).

                                  Для указания типа нумерованного списка применяется атрибут 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. Нумерация списка

                                      Римские числа

                                      1. Король Магнум XLIV
                                      2. Король Зигфрид XVI
                                      3. Король Сигизмунд XXI
                                      4. Король Хусбрандт I

                                      Результат данного примера показан на рис. 11.4.

                                      Рис. 11.4. Нумерованный список с римскими числами

                                      Нумерованные списки представляют собой набор элементов с их порядковыми номерами. Вид и тип нумерации зависит от параметров элемента

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

                                        • арабские цифры (1, 2, 3, ...);
                                        • арабские цифры c нулём впереди для цифр меньше десяти (01, 02, 03, ...,10);
                                        • прописные латинские буквы (А, В, С, ...);
                                        • строчные латинские буквы (а, b, с, ...);
                                        • римские цифры в верхнем регистре (I, II, III, ...);
                                        • римские цифры в нижнем регистре (i, ii, iii, ...);
                                        • армянская нумерация;
                                        • грузинская нумерация.

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

                                        Нумерация списка

                                        Допускается начинать список с любого номера; для этой цели применяется атрибут start элемента

                                          или value у элемента
                                        1. . В качестве значения указывается любое целое положительное число. При этом неважно, какой тип нумерации установлен, даже если в качестве списка используются латинские буквы. Если одновременно для списка применяются атрибуты start и value , то последний имеет большее преимущество, и нумерация отображается с числа, указанного value , как показано в примере 1.

                                          Пример 1. Изменение нумерации списка

                                          Списки

                                          1. Следует тщательно позаботиться о своем рабочем месте.
                                          2. Освещение в помещении отрегулировать таким образом, чтобы источник света находился сбоку или сзади оператора.
                                          3. Bo избежание медицинских осложнений стул рекомендуется выбирать с мягким сидением.

                                          Первый элемент списка в данном примере будет начинаться с римской цифры IV, поскольку указан атрибут start="4" , затем идет номер V, а последний элемент следует не по порядку и назначается номером X (рис. 1).

                                          Рис. 1. Римские цифры в списке

                                          Написание чисел

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

                                          Рис. 2. Вид нумерованного списка со скобкой

                                          Стили позволяют поменять вид нумерации списков с помощью свойств content и counter-increment . Вначале для селектора ol требуется задать counter-reset : item , это нужно для того, чтобы нумерация в каждом новом списке начиналась заново. В противном случае, нумерация будет продолжена и вместо 1,2,3 можно будет увидеть 5,6,7. Значение item это уникальный идентификатор счётчика, мы его выбираем сами. Далее необходимо спрятать исходные маркеры через стилевое свойство list-style-type со значением none .

                                          Свойство content, как правило, работает в сочетании с псевдоэлементами ::after и ::before . Так, конструкция li::before говорит о том, что перед каждым элементом списка необходимо добавить какое-то содержание (пример 2).

                                          Пример 2. Создание своей нумерации

                                          Li::before { content: counter(item) ") "; /* Добавляем к числам скобку */ counter-increment: item; /* Задаём имя счетчика */ }

                                          Свойство content со значением counter(item) выводит число; добавляя скобку, как показано в данном примере, получим требуемый вид нумерации. counter-increment необходим для увеличения номера списка на единицу. Обратите внимание, что везде используется один и тот же идентификатор с именем item . Окончательный код показан в примере 3.

                                          Пример 3. Изменение вида списка

                                          Списки

                                          1. Первый
                                          2. Второй
                                          3. Третий
                                          4. Четвертый

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

                                          Content: "[" counter(item) "] ";

                                          Список с русскими буквами

                                          Нумерованный список есть с латинскими буквами, а вот русских букв для списка нет. Их можно добавить искусственно, воспользовавшись вышеприведённым приёмом. Поскольку нумерация делается через стили, сам список остаётся исходным, к нему лишь добавляется выбранный класс, назовём его cyrilic (пример 4).

                                          Пример 4. Код для создания списка

                                          1. Один
                                          2. Два
                                          3. Три

                                          Добавление букв осуществляется с помощью псевдоэлемента ::before и свойства content . Поскольку в каждой строке должна быть своя буква, воспользуемся псевдоклассом :nth-child(1) , в скобках пишется номер буквы. Первой буквой, естественно, идёт А, второй - Б, третьей - В и т. д. Весь этот набор добавляется к селектору li следующим образом (пример 5).

                                          Пример 5. Применение псевдокласса:nth-child

                                          Cyrilic li:nth-child(1)::before { content: "а)"; } .cyrilic li:nth-child(2)::before { content: "б)"; } .cyrilic li:nth-child(3)::before { content: "в)"; }

                                          В этом примере после каждой буквы идёт круглая скобка, все буквы строчные. Вы можете определить собственный вид нумерации списка, к примеру она может содержать заглавные буквы с точкой, с одной или двумя скобками или одни только буквы. В отличие от стандартной нумерации мы здесь вольны делать что угодно. Списка из десяти букв должно хватить практически для всех ситуаций, но если этого внезапно окажется мало, ничего не мешает расширить наш список, включив в него хоть все буквы русского алфавита.

                                          Окончательно настраиваем выравнивание и положение букв, по желанию указываем размер шрифта, цвет и другие параметры (пример 6).

                                          Пример 6. Список с русскими буквами

                                          Список

                                          1. Борщ
                                          2. Котлеты из щуки
                                          3. Кулебяка
                                          4. Грибы в сметане
                                          5. Блины с икрой
                                          6. Квас

                                          Результат данного примера показан на рис. 3.