Билайн

Маркированный и нумерованный список HTML. Маркированные списки

HTML-списки используются для группировки связанных между собой фрагментов информации. Существует три вида списков:

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

    — каждый элемент списка
  • отмечается маркером,
    нумерованный список
      — каждый элемент списка
    1. отмечается цифрой,
      список определений — — состоит из пар термин
      определение.

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

      Создание HTML-списков

      1. Маркированный список

      Маркированный список представляет собой неупорядоченный список (от англ. Unordered List) . Создаётся с помощью парного тега

      . В качестве маркера элемента списка выступает метка, например, закрашенный кружок.

      Браузеры по умолчанию добавляют следующее форматирование блоку списка:

      Каждый элемент списка создаётся с помощью парного тега

    2. (от англ. List Item) .
      доступны .
    • Microsoft
    • Google
    • Apple
    Рис. 1. Маркированный список

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

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

  • . Браузер нумерует элементы по порядку автоматически и если удалить один или несколько элементов такого списка, то остальные номера будут автоматически пересчитаны.

    Блок списка также имеет стили браузера по умолчанию:

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

    Для тега

      доступны следующие атрибуты:

      Таблица 1. Атрибуты тега
      Атрибут Описание, принимаемое значение
      reversed Атрибут reversed задает отображение списка в обратном порядке (например, 9, 8, 7…).
      start Атрибут start задает начальное значение, от которого пойдет отсчет нумерации, например, конструкция
        первому пункту присвоит порядковый номер «10». Также можно одновременно задавать тип нумерации, например,
          .
      type Атрибут type задает вид маркера для использования в списке (в виде букв или цифр). Принимаемые значения:
      1 — значение по умолчанию, десятичная нумерация.
      A — нумерация списка в алфавитном порядке, заглавные буквы (A, B, C, D).
      a — нумерация списка в алфавитном порядке, строчные буквы (a, b, c, d).
      I — нумерация римскими заглавными цифрами (I, II, III, IV).
      i — нумерация римскими строчными цифрами (i, ii, iii, iv).
      1. Microsoft
      2. Google
      3. Apple
      Рис. 2. Нумерованный список

      3. Список определений

      Списки определений создаются с помощью тега

      . Для добавления термина применяется тег
      , а для вставки определения — тег
      .

      Блок списка определений имеет следующие стили браузера по умолчанию:

      Для тегов

      ,
      и
      доступны .

      Режиссер:
      Петр Точилин
      В ролях:
      Андрей Гайдулян
      Алексей Гаврилов
      Виталий Гогунский
      Мария Кожевникова
      Рис. 3. Список определений

      4. Вложенный список

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

      • Пункт 1.
      • Пункт 2.
        • Подпункт 2.1.
        • Подпункт 2.2.
          • Подпункт 2.2.1.
          • Подпункт 2.2.2.
        • Подпункт 2.3.
      • Пункт 3.

      Рис. 4. Вложенный список

      5. Многоуровневый нумерованный список

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

      1. пункт
      2. пункт
        1. пункт
        2. пункт
        3. пункт
          1. пункт
          2. пункт
          3. пункт
        4. пункт
      3. пункт
      4. пункт

      Такая разметка по умолчанию создаст для каждого вложенного списка новую нумерацию, начинающуюся с единицы. Чтобы сделать вложенную нумерацию, нужно использовать следующие свойства:
      counter-reset сбрасывает один или несколько счётчиков, задавая значение для сброса;
      counter-increment задаёт значение приращения счётчика, т.е. с каким шагом будет нумероваться каждый последующий пункт;
      content — генерируемое содержимое, в данном случае отвечает за вывод номера перед каждым пунктом списка.

      Ol { /* убираем стандартную нумерацию */ list-style: none; /* Идентифицируем счетчик и даем ему имя li. Значение счетчика не указано - по умолчанию оно равно 0 */ counter-reset: li; } li:before { /* Определяем элемент, который будет нумероваться — li. Псевдоэлемент before указывает, что содержимое, вставляемое при помощи свойства content, будет располагаться перед пунктами списка. Здесь же устанавливается значение приращения счетчика (по умолчанию равно 1). */ counter-increment: li; /* С помощью свойства content выводится номер пункта списка. counters() означает, что генерируемый текст представляет собой значения всех счетчиков с таким именем. Точка в кавычках добавляет разделяющую точку между цифрами, а точка с пробелом добавляется перед содержимым каждого пункта списка */ content: counters(li,".") ". "; }
      Рис. 5. Многоуровневый нумерованный список

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

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

    • арабские цифры (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.

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

      Стандартом пятой версии html поддерживается 3 вида списков: нумерованные списки, маркированные списки и списки определений . Также предоставляется возможность вкладывать списки друг в друга, создавая вложенные многоуровневые списки .

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

      Нумерованный список - это набор элементов (пунктов списка), имеющих определённую последовательность. Каждый пункт нумерованного списка имеет уникальный маркер, указывающий на порядок следования данного пункта относительно других пунктов списка. По умолчанию маркерами пунктов нумерованного списка являются числа. Первый пункт идёт под числом 1, второй под числом 2 и так далее.

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

      Для создания нумерованных списков в HTML используется тег

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

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

        1. Кофе
        2. Чай
        3. Молоко
        Попробовать »

        Примечание: тег

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

          Маркированный список

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

          Для создания маркированных списков в HTML применяется тег

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

            Маркированный список:

            • Кофе
            • Чай
            • Молоко
            Попробовать »

            Виды маркеров

            Виды маркеров нумерованного списка можно изменить с помощью атрибута type . Данный атрибут поддерживает пять видов маркеров:

            Маркированные списки не имеют атрибута type , поэтому средствами HTML изменить вид маркера у маркированного списка не получится. Для изменения вида маркера, в этом случае, можно воспользоваться CSS свойством list-style-type , с помощью которого, помимо значения по умолчанию, можно выбрать ещё два вида маркера: circle или square .

            Изменение маркеров у списков:

            Заголовок страницы

            Нумерованный список c атрибутом type="a":

            1. Яблоки
            2. Бананы
            3. Лимоны

            Нумерованный список c атрибутом type="I":

            1. Яблоки
            2. Бананы
            3. Лимоны

            Виды маркеров маркированных списков:

            • Яблоки
            • Бананы
            • Лимоны
            • Яблоки
            • Бананы
            • Лимоны
            Попробовать »

            CSS свойство list-style-type , помимо видов маркеров для маркированных списков, имеет множество различных видов маркеров и для нумерованных списков. Но не всегда изменения одного стандартного вида маркера на другой бывает достаточно для того, чтобы красиво оформить список. Для оформления списков лучше использовать CSS, который позволяет не только изменять вид маркера, но и заменять маркеры на картинки, контролировать их расположение и управлять отступом. Как всё это делать вы можете посмотреть .

            Горизонтальный список

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

            Чтобы создать горизонтальный список, надо для пунктов списка прописать CSS свойство display со значением inline или inline-block , в зависимости от того, какие ещё свойства вы собираетесь использовать.

            Заголовок страницы

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

            1. Яблоки
            2. Бананы
            3. Лимоны

            Маркированный список:

            • Яблоки
            • Бананы
            • Лимоны
            Попробовать »

            После этого все пункты списка выстроятся в одну строку. Обратите внимание, что у пунктов списка пропадут маркеры и между ними не будет даже пробела, но отступ слева у списка останется.

            Как горизонтальный список превратить в горизонтальное меню, вы можете посмотреть .

            В языке разметки гипертекста HTML имеется тег

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

              Синтаксис тега

                • Элемент #1
                • Элемент #2
                • Элемент #3
                • ...

                Этот код преобразуется в маркированный список на сайте:

                • Элемент #1
                • Элемент #2
                • Элемент #3

                Тег

                  требует обязательного использования закрывающего тега
                .

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

                Что может являться содержимым маркированного списка?

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

                Каждый элемент маркированного списка отступает по умолчанию на 40 пикселей вправо. Используя стили CSS, мы можем изменить отображение данного списка по своему усмотрению. Тег

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

                  Допускается вложения "список в списке"

                  Например

                  • Элемент #1
                    • Элемент #2-1
                    • Элемент #2-2
                    • Элемент #2-3
                  • Элемент #3
                  • ...

                  Атрибуты и свойства тега

                    Широко распространённым атрибутом тега

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

                      1. type="disc" - маркер в виде закрашенного кружка (это значение стоит по умолчанию). Пример с диском был чуть выше.

                      2. type="circle" - маркер в виде прозрачного кружка

                      Например:

                      • Элемент #1
                      • Элемент #2
                      • Элемент #1
                      • Элемент #2

                      3. type="square" - маркер в виде квадратика

                      Например:

                      • Элемент #1
                      • Элемент #2

                      А вот как это выглядит на странице:

                      • Элемент #1
                      • Элемент #2
                      Примечание 1

                      В CSS тип маркера задается с помощью атрибута list-style-type :

                      • ...

                      Рассмотрим какие значения может принимать list-style-type :

                      • disc - маркер в виде кружка (пример был выше)
                      • circle - маркер в виде прозрачного кружка (пример был выше)
                      • square - маркер в виде квадратика (пример был выше)
                      • decimal - маркер в виде нумереннового списка арабскими цифрами: 1, 2, 3, ...
                      • decimal-leading-zero - маркер в виде нумереннового списка арабскими цифрами с нулем в начале: 01, 02, 03, ...
                      • lower-roman - маркер в виде нумереннового списка римским алфавитом маленькими буквами: i, ii, iii, iv, v
                      • upper-roman - маркер в виде нумереннового списка римским алфавитом большими буквами: I, II, III, IV, V
                      • lower-latin - маркер в виде списка латинским алфавитом маленькими буквами: a, b, c, d, ...
                      • upper-latin - маркер в виде списка латинским алфавитом большими буквами: A, B, C, D, ...
                      • lower-greek - маркер в виде списка греческим алфавитом маленькими буквами
                      • upper-greek - маркер в виде списка греческим алфавитом большими буквами

                      Примечание 2

                      Атрибут можно назначить как самому тегу

                        , так и тегам
                      • . При задании атрибута тегу
                          все элементы списка будут отображаться так, как на это указывает атрибут. Но мы можем задать тому или иному элементу своё отображение. Пример на рисунке:

                          Код при этом выглядит так:

                          • Элемент #1
                          • Элемент #2
                          • Элемент #3
                          • Элемент #1
                          • Элемент #2
                          • Элемент #3

                          Изменение маркеров тега
                            с помощью CSS

                          Элементы маркированного списка, создаваемые тегом

                            , могут маркироваться произвольными изображениями. Для изменения типа маркера используется CSS. Например

                            • Элемент #1
                            • Элемент #2
                            • Элемент #3

                            А так это выглядит на странице:

                            • Элемент #1
                            • Элемент #2
                            • Элемент #3

                            C помощью CSS мы можем задать и другие типы отображения маркеров. Но нужно помнить, что при задании какого-либо стиля тегу

                              , он распространяется на все элементы списка.

                              Разница лишь в том, что этот тег строго сделан для нумерации списков. Название тега пришло от английского сокращения "Ordered List" - нумерованный список.

                              Синтаксис тега

                                1. Элемент #1
                                2. Элемент #2
                                3. Элемент #3
                                4. ...

                            Где атрибут type="value" может принимать следующие значения

                            • A - задает маркеры в виде прописных латинских букв (A, B, C..);
                            • a - задает маркеры в виде строчных латинских букв (a, b, c..);
                            • I - задает маркеры в виде больших римских цифр (I, II, III, IV..);
                            • i - задает маркеры в виде маленьких римских цифр (i, ii, iii, iv..);
                            • 1 (по умолчанию) - задает маркеры в виде арабских цифр (1, 2, 3..);

                            Атрибут start="value" задает начальное значение (стартовое значение) отчета.

                            Атрибут reversed задает обратный счет (в случае необходимости).

                            Тег

                              требует обязательного использования закрывающего тега

                            Для формирования элементов списка используется парный тег

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

                            Примечание

                            Внутри списка есть возможность изменять счет на свой. Для этого есть специальный атрибут value="" у тега

                          • , которому присваивается какое-то числовое значение. Например

                            1. Элемент #1
                            2. Элемент #2
                            3. Элемент #3

                          Примеры с нумерованными списками в html (
                            )

                          Пример 1. Нумерованный список html в виде латинских букв

                          Пример с заглавными буквами

                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3
                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3

                          Пример со строчными буквами

                          1. Элемент #10
                          2. Элемент #11
                          3. Элемент #12

                          Вот как это выглядит на странице:

                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3

                          Пример 2. Нумерованный список html в виде римских букв

                          Пример с заглавными буквами

                          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. Нумерованный список html разная позиция старта

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

                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3

                          Вот как это выглядит на странице:

                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3

                          Пример 4. Изменение счета в нумерованных списках html

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

                        • .

                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3
                          4. Элемент #4

                          Вот как это выглядит на странице:

                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3
                          4. Элемент #4

                          Пример 5. Реверсивный нумерованный список в html

                          Ниже приведен пример реверсивного нумерованного списка (счет в обратном порядке).

                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3
                          4. Элемент #4

                          Вот как это выглядит на странице:

                          1. Элемент #1
                          2. Элемент #2
                          3. Элемент #3
                          4. Элемент #4