Стилизация номеров строк (цифр) в упорядоченных списках ol. Примеры стильного оформление ul li списков CSS Многоуровневый нумерованный список

HTML теги

Значение и применение

Нумерованный (упорядоченный) список предназначен для элементов, которые следуют в определённом порядке. Нумерованный список начинается с тега

    (сокращенное от английского ordered list - упорядоченный список). Каждый элемент списка начинается с тега
  1. (элемент списка).

    Поддержка браузерами

    Атрибут
    Opera

    IExplorer

    Edge
    start , type Да Да Да Да Да Да
    reversed Да Да Да Да Нет Нет

    Атрибуты

    Атрибут Значение Описание
    compact compact Не поддерживается в HTML5.
    Указывает, что список должен быть меньше обычного размера (line-height : 80% ).
    Используйте CSS вместо данного атрибута.
    reversed Указывает, что порядок в нумерованном (упорядоченном) списке должен идти по убыванию. Атрибут не поддерживается браузерами Internet Explorer и Edge.
    start number Определяет начальное значение нумерованного (упорядоченного) списка. Значения должны быть целочисленными, допускается использование отрицательных значений. При использовании с буквами (type = "A" и type = "a" ), число, указанное в значении атрибута является порядковым номером буквы в алфавите. Например, start = "4" , будет соответствовать букве "D" и список начнётся именно с неё. При использовании значения start = "27" счетчик обнуляется, при этом список становится двухзначным ("27" = "AA", "28" = "AB", "29" = "AC"...).
    type 1 (по умолчанию)
    A (большие)
    a (строчные)
    I (римские большие)
    i (римские маленькие)
    Определяет тип маркера, который используется в построении нумерованного (упорядоченного) списка.

    Пример использования

    Пример использования тега <ol> <span>
    1. Первый пункт Второй пункт
    2. Третий пункт
    3. Выглядеть на странице это будет соответственно так:

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

      Если вы хотите, чтобы список начинался с определённого номера (не с 1), то необходимо указать атрибут start для тега

        .

        Например:

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

          Рассмотрим пример в котором представлены все возможные значения атрибута type (отличные от значения по умолчанию):

          Пример использования атрибута type HTML тега <оl>
            >
          1. Первый пункт Второй пункт
          2. Третий пункт
            1. >
            2. Первый пункт Второй пункт
            3. Третий пункт
              1. >
              2. Первый пункт Второй пункт
              3. Третий пункт
                1. >
                2. Первый пункт Второй пункт
                3. Третий пункт
                4. Обращаю Ваше внимание, что допускается формировать нумерованные (упорядоченные) списки, вложенные в другие нумерованные списки (внутри элемента списка

                5. ):

                  Пример нумерованного списка, вложенного в другой нумерованный список<span>
                  1. Первый пункт
                    1. Первый пункт Второй пункт
                    2. Третий пункт
                    3. Второй пункт
                    4. Третий пункт
                    5. Выглядеть на странице это будет соответственно так.

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

                        , который и применяется для создания списка. Каждый пункт нумерованного списка обозначается тегом
                      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. Нумерованный список с римскими числами

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


                              .

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

                              Теперь мы продолжим изучение тегов. Я буду предполагать, что читатель уже ознакомлен с материалом указанных выше статей.

                              Как всегда, план работы:

                              1. Абзацы
                              2. Разрывы строк
                              3. Списки , и элементы списков
                              4. Заголовки
                              5. Горизонтальные линейки

                              Абзацы

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

                              В html абзац, как можно судить из заголовка, обозначается . Буква «p» взята из слова «paragraph», что как-раз обозначает «абзац».

                              Рассмотрим пример:

                              Текст первого абзаца. Он содержит мысль. Но вот мысль закончилась.


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

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

                              Разрывы строк

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

                              Ветер весело гуляет

                              И кораблик подгоняет

                              Он бежит себе в волнах
                              На поднятых парусах.

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

                              Списки ,
                                и элементы списков

                              Иногда в тексте нужно перечислить что-то. Для этой цели применяются три тега: ul, ol, li. Все эти теги контейнерные, но тег всегда содержится в одном из контейнеров или , и не имеет смысла вне них. Контейнер ul применяется, когда нам не важен порядок перечисляемых позиций, и мы не хотим акцентировать внимание на порядке, в котором они идут. А тег ol, наоборот, акцентирует внимание на последовательности следования элементов, автоматически нумеруя каждую строку. Рассмотрим пример:


                              • Булка

                              • Пирожок

                              • Буханка

                              • Пирог

                              На экране браузера этот код будет выглядеть так:

                              • Булка
                              • Пирожок
                              • Буханка
                              • Пирог

                              Если мы просто заменим тег ul на тег ol, то получим нумерованый список:


                              1. Булка

                              2. Пирожок

                              3. Буханка

                              4. Пирог

                              Теперь это выглядит так:

                              1. Булка
                              2. Пирожок
                              3. Буханка
                              4. Пирог

                              Никто не запрещает вкладывать один список в другой, формируя вложенные списки с подсписками:


                                Инструменты:
                              • Пила

                              • Отвертки

                                1. Прямая

                                2. Крестовая



                              • Дрель

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

                              Конечно, как и все остальное, внешний вид этих элементов может быть изменен до неузнаваемости при помощи CSS.

                              Заголовки

                              Конечно, абзацы помогают в структурировании документов. Но для того, чтобы разбить большой текст на меньшие логические части, можно озаглавить каждую из них. Каждая часть может содержать еще подчасти, со своими заголовками нижнего уровня, и так далее. Для задания заголовка, служат теги , где «x» — число от 1 до 6. Заголовок тем ниже уровнем, чем больше это число. То есть, заголовок самого верхнего уровня будет называться h1, а самого нижнего — h6. По-умолчанию, текст, находящийся в этих заголовках, отображается большим шрифтом с отступами. Этот текст отображается на всю строку, то есть теги hx являются блочными. У тега h1 шрифт самый крупный, а у тега h6 — самый мелкий. Как правило, на странице один, максимум — два тега верхнего уровня h1. С понижением уровня, количество тегов возрастает. Но редко какой веб-мастер сможет разбить текст так, что ему понадобятся заголовки 5 или 6 уровня. Даже 4 уровень применяется редко.

                              Меньше слов, больше дела!

                              Задача

                              Отобразить маркированый список горизонтально без маркеров.

                              Решение

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

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

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

                                или

                                Так вот, тег

                              • также является блочным элементом.

                                Чтобы тег

                              • не вёл себя как блочный элемент, можно при помощи CSS сделать его строчным.

                                За то, как элемент будет отображён в документе отвечает CSS свойство display . Рассмотрим три его значения (хотя их больше):

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

                                Сначала сделаем горизонтальный список превратив его пунткы в строчные элементы. В стиле CSS пропишем правило, в котором селектору li установлено свойство display со значением inline .

                                Список горизонтально

                                Итак, этот стиль сработал и получили горизонтальное расположение пунктов списка:

                                Рисунок 1. Работа примера №1.

                                У этого метода есть недостатки. Дело в том, что inline элементы имеют некоторые ограничения, по сравнению с блочными элементами. Например им нельзя задавать ширину и высоту, а блочным можно.

                                Например нам нужно чтобы элемент создаваемого нами меню имел ширину 150px и высоту 40px . Попробуем изменить стиль на следующий, то есть добавим два правила устанавливающих размер пункта меню:

                                Эти правки не приведут ни к каким изменениям. Чтобы элементы меню располагались горизонтально и можно было устанавливать их ширину и высоту им нужно установить тип inline-block . Изменим код нашего примера:

                                Список горизонтально

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


                                Рисунок 2. Работа примера №2.

                                Но могут быть разные варианты, например нам нужно отобразить в меню вложенные списки:

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

                                Вот результат работы этого кода:


                                Рисунок 3. Работа примера №3.

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

                                А собственно, почему так происходит?

                                Наши блоки имеют свойство display со значением inline-block . Это значит что у них есть качества как блочных элементов (возможность указать ширину и высоту), так и строчных элементов. То что мы наблюдаем - это качество строчных элементов.

                                Давайте рассмотрим строку с символами "А" разной величины:

                                А А А А А А А

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

                                Для выравния текста по вертикали служит свойство vertical-align . В нашем примере №3 нужно использовать значение top , которое выравняет верхнюю границу элемента по верху самого высокого элемента строки.

                                Пока применим его к строке с символами "А" разной величины:

                                А А А А А А А

                                Кажется, что буквы немного "скачут". Я установил CSS границу border самой высокой букве, чтобы было видно, что скачков на самом деле нет, есть пустое пространство между верхней границей (по которой происходит выравнивание) и верхней точкой символа "А".

                                Свойство vertical-align нужно применять к каждому строчному элементу, оно не наследуется. Вы можете прочитать подробней про это свойство: vertical-align .

                                После этого отступления продолжим размещать элементы списка горизонтально.

                                Второй способ

                                Разместить элементы списка горизонтально можно используя свойство float . Это свойство указывает по какой стороне выравнивается элемент, имеет две позиции: left и right .

                                Вот пример с использованием этого кода:

                                Список горизонтально

                                Вот результат работы кода:

                                Рисунок 4. Работа примера.

                                Вроде пример работает. Но в использовании этого свойства есть один нюанс. Сейчас мы его рассмотрим. Для примера возьмём код, в котором есть два горизонтальных списка с разным способом расположения элементов горизонтально: display и float :

                                Список горизонтально

                                Вот результат работы кода:

                                Рисунок 5. Работа примера.

                                В этих примерах контейнеры списка

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

                                  При этом на первый взгляд всё работает. Но давайте поменяем местами наши списки. Поставим список с классом menu-1 в коде перед списком с классом menu-2 (сейчас он ниже).

                                  Вот что мы получим в результате:

                                  Рисунок 6. Работа примера.

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

                                  Как решить эту проблему?

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

                                  Вот изменённый пример с использованием свойства clear :

                                  Список горизонтально

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

                                • всё ещё располагаются вне контейнера
                                    .

                                    Рисунок 7. Работа примера.

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

                                    Это делается при помощи псевдоэлемента. Вот код:

                                    Список горизонтально

                                    Теперь у нас 100% рабочий код.

                                    Рисунок 8. Работа примера.

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

                                    . Таким способом мы получаем нормальное построение столбцов с требуемым выравниванием по высоте. Когда мы создаём меню, то нам, в большенстве случаев, не важна высота блоков, она практически всегда одинакова. Поэтому использование правила {display : inline-block } в этих случаях вполне оправдано.

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

                                    Здравствуйте, уважаемые читатели! Сегодня в качестве продолжения цикла статей рубрики «Основы 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 . На этом тема сегодняшней статьи исчерпана, если вы получили необходимую информацию, не откажитесь воспользоваться кнопками социальных сетей.

                                    Похожие статьи

© 2024 v-dud.ru. Информационный онлайн журнал.