Html вложенные нумерованные списки. Списки в HTML - маркированный список - нумерованный список - список определений - вложенные списки в 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. Многоуровневый нумерованный список

- 4.5 out of 5 based on 2 votes

Очень часто определенную информацию на сайте необходимо представить в виде списков.

Списки позволяют упорядочить и систематизировать различную информацию и представить ее для посетителя в удобном виде.

Списки в HTML могут быть трех разновидностей: маркированные списки, нумерованные списки и списки определений. Рассмотрим, как их создавать по порядку.

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

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

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

    Код маркированного списка будет выглядеть так:

    • Вариант такой
    • Вариант сякой
    • Вариант эдакий

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

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

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

      • disc - круг;
      • circle - окружность;
      • square - квадрат.

      Значение disc используется по умолчанию.

      Пример создания маркированного списка с маркерами в виде окружности:

      • Вариант такой
      • Вариант сякой
      • Вариант эдакий

      В результате список примет, следующий вид:

      Создание маркированного списка с маркерами в виде квадратиков:

      • Вариант такой
      • Вариант сякой
      • Вариант эдакий

      Список будет иметь вид:

      Атрибут type можно применять не только к тегу

        , но и к тегу
      • . Таким образом можно создать список с разнообразными маркерами.

        • Вариант такой
        • Вариант сякой
        • Вариант эдакий

        В результате получится следующее:

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

        Нумерованные списки в HTML представляют собой списки, в которых каждый пункт имеет порядковый номер, создаются нумерованные списки при помощи тега

          и вложенных в его тегов
          1. Первая строчка
          2. Вторая строчка
          3. Третья строчка

          Выглядит такой список следующим образом:

          По умолчанию нумерация производится арабскими цифрами. Но у тега

            есть атрибут type, при помощи значений которого нумерацию можно делать заглавными (type="A") или строчными (type="a") латинскими буквами, римскими цифрами в верхнем (type="I") и нижнем (type="i") регистре.

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

            Вид списка:

            Вид списка:

            Нумерация строчными буквами латинского алфавита:

            Вид списка:

            Вид списка:

            Вид списка:

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

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

            . Тег
            создает контейнер для списка, тег
            устанавливает термин, а тег
            описание или определение термина.

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

            Термин 1
            Определение термина 1
            Термин 2
            Определение термина 2
            Термин 3
            Определение термина 3

            В результате получится следующий список:

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

            Вложенные или многоуровневые списки в HTML.

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

            Например, вот код, при помощи которого в элементы маркированного списка вложены нумерованные списки.

            • Вариант такой
              1. Первая строчка
              2. Вторая строчка
              3. Третья строчка
            • Вариант сякой
              1. Первая строчка
              2. Вторая строчка
              3. Третья строчка
            • Вариант эдакий
              1. Первая строчка
              2. Вторая строчка
              3. Третья строчка

            В языке разметки 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. Списки - важная составляющая контента, так как они помогают упорядочить информацию. Текст в списках лучше воспринимается и проще запоминается.

                              Самый простой - перед каждым его элементом стоит маркер - кружок, квадрат или окружность. Последовательность элементов в маркированном списке не важна.

                              Чтобы его создать, нужно использовать всего два тега:

                                и
                              • .
                                  - это контейнер, содержащий список, элементы которого задаются тегом
                                • .

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

                                  • Камень
                                  • Ножницы
                                  • Бумага

                                  По умолчанию в качестве маркера списка используется чёрный кружок (disk ). Добавив в тег

                                    атрибут type и присвоив ему соответствующее значение, маркер можно сменить на окружность (circle ) или чёрный квадрат (square ).

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

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

                                      и
                                    1. . Контейнер
                                        определяет начало и конец списка, тег
                                      1. задаёт начало и конец его элемента - всё, как в маркированном списке, только
                                          заменено на
                                            .

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

                                            1. Камень
                                            2. Ножницы
                                            3. Бумага

                                            Так как с нумерованными списками не всегда всё так просто, для тега

                                              создали следующие атрибуты (обратите внимание: ниже как раз приведён нумерованный список):

                                              1. type . Этот атрибут позволяет нумеровать список не только арабскими, но также римскими цифрами или латинскими буквами разного регистра. type поддерживает значения 1 (по умолчанию), a, A, i, I (попробуйте поэкспериментировать с ними самостоятельно).

                                              2. start . Не всегда нумерация должна начинаться с единицы. Этот атрибут позволяет задать начальное значение - номер первого элемента списка. В нём можно указать, чтобы отчёт начинался, например, с числа 100 или буквы K.

                                              3. reversed . Если список должен идти не с 1 до 10, а с 10 до 1, то необходимо использовать этот атрибут. Если он задан, нумерация будет вестись в обратном порядке.

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

                                            1. атрибут :

                                            2. Сорок пятый элемент после тридцать восьмого
                                            3. Изменив номер одного элемента в середине списка, вы измените и нумерацию всех следующих за ним элементов - отчёт начнётся со значения в атрибуте value. Например, если элементу 18 вы присвоили номер 35, то следующие за ним элементы будут иметь номера не 19, 20, 21, а 36, 37, 38.

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

                                              Не такой известный тип списка, как рассмотренные выше. Состоит из терминов и их определений. Создаётся с помощью тегов:

                                              - контейнер, содержащий список.

                                              - тег термина.

                                              - тег определения

                                              Область применения списков определений - глоссарии, справочники, тесты, словари и другие ёмкие перечисления вида «Термин - объяснение».

                                              Вот пример списка определений:

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

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

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

                                              Вот пример многоуровневого списка:

                                              Многоуровневый список Языки программирования делятся на:

                                              • Структурные
                                                1. Pascal
                                                2. Oberon
                                                  1. Limbo
                                              • Объектно-ориентированные
                                                1. Java
                                              • Функциональные
                                                1. Lisp
                                                2. Python

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

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

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