Оформление списков: группа свойств list-style в CSS.

Сегодня нет практически ни одного сайта, где бы не использовались HTML списки (

    представляет упорядоченный список,
      - неупорядоченный список). В этом уроке я покажу вам 8 отличных способов, позволяющих сделать обычные скучные html-списки привлекательными. Мы лишь добавим несколько простых CSS техник и наши списки не только приобретут потрясающий вид, но и несколько дополнительных возможностей.

      А теперь посмотрите демо-версию, чтобы увидеть, что же мы с вами будем создавать.

      Выглядят гораздо лучше, не так ли? И вы тоже можете создать такие списки при помощи простого CSS кода. Хотите знать как? Читайте!

      Список #1: Простая система навигации

      Чаще всего списки используются при создании навигационного меню. Код данного HTML/CSS примера позволяет создать простую, даже немного скромную, но привлекательную систему навигации.

      • Home
      • Blog
      • About
      • Contact

      /* LIST #1 */ #list1 { } #list1 ul { list-style:none; text-align:center; border-top:1px solid #eee; border-bottom:1px solid #eee; padding:10px 0; } #list1 ul li { display:inline; text-transform:uppercase; padding:0 10px; letter-spacing:10px; } #list1 ul li a { text-decoration:none; color:#eee; } #list1 ul li a:hover { text-decoration:underline; }

      Список #2: Использование различного шрифта при нумерации

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

        The Netherlands is a country in ...

        The United States of America is a federal constitutional ...

        The Philippines officially known as the Republic ...

        The United Kingdom of Great Britain and ...

      /* LIST #2 */ #list2 { width:320px; } #list2 ol { font-style:italic; font-family:Georgia, Times, serif; font-size:24px; color:#bfe1f1; } #list2 ol li { } #list2 ol li p { padding:8px; font-style:normal; font-family:Arial; font-size:13px; color:#eee; border-left: 1px solid #999; } #list2 ol li p em { display:block; }

      Список #3: Изображения-маркеры

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

      • Java
      • .NET

      /* LIST #3 */ #list3 { } #list3 ul { list-style-image: url("../images/arrow.png"); color:#eee; font-size:18px; } #list3 ul li { line-height:30px; }

      Список #4: iPhone-стиль

      Данный список взят из статьи the iPhone Contacts App, созданный при помощи CSS и jQuery. Так выглядят списки на iPhone. Очень привлекательно, не так ли? Хотите такой на свой сайт?

      • Toronto2004
      • Beijing2008
      • London2012
      • Rio de Janeiro2016

      /* LIST #4 */ #list4 { width:320px; font-family:Georgia, Times, serif; font-size:15px; } #list4 ul { list-style: none; } #list4 ul li { } #list4 ul li a { display:block; text-decoration:none; color:#000000; background-color:#FFFFFF; line-height:30px; border-bottom-style:solid; border-bottom-width:1px; border-bottom-color:#CCCCCC; padding-left:10px; cursor:pointer; } #list4 ul li a:hover { color:#FFFFFF; background-image:url(../images/hover.png); background-repeat:repeat-x; } #list4 ul li a strong { margin-right:10px; }

      Список #5: Вложенные списки

      Вложенные списки могут быть необыкновенно полезны и выглядят красиво. Изменив третью технику (Изображения-маркеры), мы можем создать «расширенный список». Конечно же не без помощи jQuery:

      1. Google
        1. Picasa
        2. Feedburner
        3. Youtube
      2. Microsoft
        1. Corel Corporation
        2. Zignals
        3. ByteTaxi
      3. Yahoo!
        1. Xoopit
        2. BuzzTracker
        3. MyBlogLog

      /* LIST #5 */ #list5 { color:#eee; } #list5 ol { font-size:18px; } #list5 ol li { } #list5 ol li ol { list-style-image: url("../images/nested.png"); padding:5px 0 5px 18px; font-size:15px; } #list5 ol li ol li { color:#bfe1f1; height:15px; margin-left:10px; }

      Список #6: Римская нумерация + многострочный тип

      По умолчанию в списке используются стандартная нумерация (1, 2, 3, 4 и т.д.). Изменив значение в CSS, вы можете задать другой тип нумерации, к примеру, римский.
      Так же по умолчанию, нумерация и маркеры располагаются вне списка (отличный пример тому - наш список под номером 2). Но и это исправимо, всего лишь нужно изменить значение list-style-position свойства на inside.

      1. Lorem ipsum dolor sit amet, ...
        Fusce sit amet ...
      2. Aenean placerat lectus tristique...
        Vivamus interdum ...
      3. Mauris eget sapien arcu, vitae...
        Phasellus neque risus...
      4. Phasellus feugiat lacus ...
        Duis rhoncus ...

      /* LIST #6 */ #list6 { font-family: "Trebuchet MS", "Lucida Grande", Verdana, Lucida, Geneva, Helvetica, Arial, sans-serif; } #list6 ol { list-style-type: upper-roman; color:#eee; font-size:14px; list-style-position: inside; } #list6 ol li { }

      Список #7: Линейный список, в котором пункты перечисляются через запятую

      Обычно списки используются для отображения количества чего-либо и отражаются в виде столбика. Но как быть, если вам нужен линейный список? Это достигается путем смены значения display свойства на inline. Но если вам вдруг понадобится встроить список в текст, то по правилам, пунктики списка должны быть разделены запятой. Как этого добиться? А, просто, при помощи элемента:after символического кода.

      • First inline item
      • Second inline item
      • Third inline item
      • Fourth inline item

      /* LIST #7 */ #list7 { } #list7 ul { color:#eee; font-size:18px; font-family:Georgia, Times, serif; } #list7 ul li { display: inline; } #list7 ul li:after { content: ", "; } #list7 ul li.last:after { content: ". "; }

      Список #8: Вращающееся навигационное меню

      Вот и последняя техника, для работы которой понадобится CSS3 (поддерживается только последними версиями Firefox, Safari и Chrome). При наведении курсора на один из элементов блока включается эффект - вращение. Конечно не самый удобный способ, но очень красивый.

      • Home
      • Blog
      • About
      • Contact

      /* LIST #8 */ #list8 { } #list8 ul { list-style:none; } #list8 ul li { font-family:Georgia,serif,Times; font-size:18px; } #list8 ul li a { display:block; width:300px; height:28px; background-color:#333; border-left:5px solid #222; border-right:5px solid #222; padding-left:10px; text-decoration:none; color:#bfe1f1; } #list8 ul li a:hover { -moz-transform:rotate(-5deg); -moz-box-shadow:10px 10px 20px #000000; -webkit-transform:rotate(-5deg); -webkit-box-shadow:10px 10px 20px #000000; transform:rotate(-5deg); box-shadow:10px 10px 20px #000000; }

      Заключение

      Как видите, реально создать уникальные вещи из обычного html-списка. И все это силами CSS. Очень рад, если вы узнали много интересного для себя.

      CSS-списки — набор свойств, отвечающих за оформление списков. Использование HTML-списков очень распространено при создании панелей навигации по сайту. Элементы списка представляют набор блочных элементов.

      С помощью стандартных CSS-свойств можно изменить внешний вид маркера списка , добавить изображение для маркера , а также изменить местоположение маркера . Высоту блока маркера можно задать свойством line-height .

      Оформление списков с помощью CSS-стилей

      1. Тип маркера списка list-style-type

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

      list-style-type
      Значения:
      disc Значение по умолчанию. В качестве маркера элементов списка выступает закрашенный кружок.
      armenian Традиционная армянская нумерация.
      circle В качестве маркера выступает незакрашенный кружок.
      cjk-ideographic Идеографическая нумерация.
      decimal 1, 2, 3, 4, 5, …
      decimal-leading-zero 01, 02, 03, 04, 05, …
      georgian Традиционная грузинская нумерация.
      hebrew Традиционная еврейская нумерация.
      hiragana Японская нумерация: a, i, u, e, o, …
      hiragana-iroha Японская нумерация: i, ro, ha, ni, ho, …
      katakana Японская нумерация: A, I, U, E, O, …
      katakana-iroha Японская нумерация: I, RO, HA, NI, HO, …
      lower-alpha a, b, c, d, e, …
      lower-greek Строчные символы греческого алфавита.
      lower-latin a, b, c, d, e, …
      lower-roman i, ii, iii, iv, v, …
      none Маркер отсутствует.
      square В качестве маркера выступает закрашенный или незакрашенный квадрат.
      upper-alpha A, B, C, D, E, …
      upper-latin A, B, C, D, E, …
      upper-roman I, II, III, IV, V, …
      initial Устанавливает значение свойства в значение по умолчанию.
      inherit Наследует значение свойства от родительского элемента.

      Синтаксис

      Ul {list-style-type: none;} ul {list-style-type: square;} ol {list-style-type: none;} ol {list-style-type: lower-alpha;}
      Рис. 1. Пример оформления маркированного и нумерованного списков

      2. Изображения для элементов списка list-style-image

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

      Синтаксис

      Ul {list-style-image: url("images/romb.png");} ul {list-style-image: linear-gradient(#FF7A2F 0, #FF7A2F 50%, #FFB214 50%);}
      Рис. 2. Оформление маркированного списка с помощью изображения Рис. 3. Оформление маркированного списка с помощью градиента

      3. Местоположение маркера списка list-style-position

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

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

      Обычный вид маркера

      И, первое - задать внешний вид маркеров. Маркеры у списков бывают разные. В уроках по HTML Нумерованных списках показывается, как менять маркеры с помощью атрибута type . Но зная CSS данный атрибут больше не нужен, так как все это делается, куда удобней, благодаря таблице стилей CSS .

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

      HTML

      HTML страница

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

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

      Убирается маркер у списка с помощью свойства list-style-typet и присваивая ему значение none . Это является самым популярным вариантом по удалению маркеров у списка. И для списка зададим то самое свойство.

      Ul{ list-style-type: none; }

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

      • none - Удаляет маркеры у списка
      • circle - Маркер в виде круга
      • disc" - Маркер в виде заполненного круга. Значение по умолчанию
      • square - Маркер в виде квадрата
      • armenian - Армянская нумерация
      • decimal - Маркер в виде цифры
      • decimal-leading-zero - Цифры с «0» перед началом (01, 02, 03, и т.д.)
      • georgian - Грузинская нумерация
      • lower-alpha - (а, Ь, с, d, е, и т.д.)
      • lower-greek - (alpha, beta, gamma, и т.д.)
      • lower-latin - (a, b, с, d, e, и т.д.)
      • Iower-roman - (i, ii, iii, iv, v, и т.д.)
      • upper-alpha - (А, В, С, D, Е, и т.д.)
      • upper-latin - (А, В, С, D, Е, и т.д.)
      • upper-roman - (I, II, III, IV, V, и т.Д.)
      • inherit - Значение должно быть унаследовано от элемента родителя

      Это все вида маркеров для списков. Первые четыре вида самые распространённые, остальные виды применяются достаточно редко.

      Ну и для примера давайте выберем и зададим маркер в виде больших римских цифр. Делается это просто: в место значения none ставим название нашего маркера upper-roman .

      Ul{ list-style-type: upper-roman; }

      Если обновить страницу, то у списков в виде маркеров появились римские большие цифры. Вот таким способом можно менять внешний вид маркеров списков, задавая нужный вид через свойство list-style-type .

      Маркер в виде изображения

      Второй, достаточно важный момент, и часто используемый маркер - это изображение в виде маркера. Часто нужно использовать маркер в виде красивой картинки и обычные варианты маркеров представленных CSS не подходят. Для этого используется изображения. И делается это с помощью специального свойства, которое называется list-style-image . Это будет указывать браузеру, что маркером у нас будет картинка.

      Возьмите любую картинку в интернете размером (15px x 15px) , которую планируется использовать в качестве маркера и поместите ее в ранее уже созданную папку с картинками images . После этого, остается свойству list-style-image указать путь к картинке и браузер вместо маркера подставит картинку.

      В CSS путь указывается с помощью ключевого слова url() . В скобках указываем путь к картинке ../images/Название картинки.jpg , относительно таблицы стилей.

      То есть, что значит относительно таблицы стилей? Наша таблица стилей - файл style.css , лежит в каталоге CSS , а картинка лежит в каталоге images . Это значит, что браузеру нужно указать, что ему сначала нужно выйти из каталога CSS , это делается так: ../ , а затем зайти в в каталог с картинкой images и уже затем найти нужную картинку.

      Ul{ list-style-image: url(../images/Название картинки маркера.jpg); }

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

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

    • .

      Ul li{ border: 2px solid #ff0000; }

      Теперь, если вы посмотрите, то Ваш маркер-картинка находится за пределами элемента списка, той самой рамки, что мы создали выше. Поэтому бывают моменты, когда нужно чтобы маркер находился внутри элемента списка. Для этого и существует свойство list-style-position , в которое изначально установлено значение outside , то есть устанавливать маркеры за пределами элемента.

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

      Ul{ list-style-image: url(../images/Название картинки маркера.jpg); list-style-position:inside; } ul li{ border: 2px solid #ff0000; }

      Вот таким образом работают три этих свойства. Существует и сокращенный вариант записи, который объединяет все эти свойства.

      То есть, указывается свойство list-style и затем, по порядку, значения типа маркера, позиции маркера и, если нужно путь к картинке, которая и будет маркером. И, картина у нас получится следующая:

      Ul{ list-style: inside url(../images/Название картинки маркера.jpg); }

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

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

      Синтаксис

      List-style-type: circle | disc | square | armenian | decimal | decimal-leading-zero | georgian | lower-alpha | lower-greek | lower-latin | lower-roman | upper-alpha | upper-latin | upper-roman | none

      Обозначения

      Описание Пример
      <тип> Указывает тип значения. <размер>
      A && B Значения должны выводиться в указанном порядке. <размер> && <цвет>
      A | B Указывает, что надо выбрать только одно значение из предложенных (A или B). normal | small-caps
      A || B Каждое значение может использоваться самостоятельно или совместно с другими в произвольном порядке. width || count
      Группирует значения. [ crop || cross ]
      * Повторять ноль или больше раз. [,<время>]*
      + Повторять один или больше раз. <число>+
      ? Указанный тип, слово или группа не является обязательным. inset?
      {A, B} Повторять не менее A, но не более B раз. <радиус>{1,4}
      # Повторять один или больше раз через запятую. <время>#
      ×

      Значения

      Значения зависят от того, к какому типу списка они применяются: маркированному или нумерованному.

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

      circle Маркер в виде кружка. disc Маркер в виде точки. square Маркер в виде квадрата.

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

      armenian Традиционная армянская нумерация. decimal Арабские числа (1, 2, 3, 4,...). decimal-leading-zero
      Арабские числа с нулем впереди для цифр меньше десяти (01, 02, 03,...). georgian Традиционная грузинская нумерация. lower-alpha Строчные латинские буквы (a, b, c, d,...). lower-greek Строчные греческие буквы (α, β, γ, δ,...). lower-latin Это значение аналогично lower-alpha . lower-roman Римские числа в нижнем регистре (i, ii, iii, iv, v,...). upper-alpha Заглавные латинские буквы (A, B, C, D,...). upper-latin Это значение аналогично upper-alpha . upper-roman Римские числа в верхнем регистре (I, II, III, IV, V,...). none Отменяет маркеры для списка.

      Песочница

      1. Четыре

      ul { list-style-type: decimal ; }

      Пример

      list-style-type

      1. Gaius Octavius Thurinus
      2. Tiberius Claudius Nero
      3. Gaius Iulius Caesar Augustus Germanicus
      4. Tiberius Claudius Drusus
      5. Lucius Arruntius Camillus Scribonianus
      6. Nero Claudius Caesar Drusus Germanicus
      7. Lucius Clodius Macer

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

      Рис. 1. Применение свойства list-style-type

      Объектная модель

      Объект .style.listStyleType

      Примечание

      В браузере Internet Explorer 6 при использовании нумерованного списка

        и значения inside свойства list-style-position , числа идущие с 10, начинают накладываться на текст списка.

        Браузер Internet Explorer до версии 7 включительно не поддерживает значения armenian , decimal-leading-zero , georgian , lower-greek , lower-latin , upper-latin . Вместо них выводится нумерация арабскими числами. В этом браузере нумерация или маркеры не отображаются для плавающих элементов (ul { float: left; } ).

        Internet Explorer 8 дополнительно понимает значение upper-greek , которое устанавливает нумерацию в виде заглавных греческих букв (Α, Β, Γ, Δ,...).

        Спецификация

        Каждая спецификация проходит несколько стадий одобрения.

        • Recommendation (Рекомендация ) - спецификация одобрена W3C и рекомендована как стандарт.
        • Candidate Recommendation (Возможная рекомендация ) - группа, отвечающая за стандарт, удовлетворена, как он соответствует своим целям, но требуется помощь сообщества разработчиков по реализации стандарта.
        • Proposed Recommendation (Предлагаемая рекомендация ) - на этом этапе документ представлен на рассмотрение Консультативного совета W3C для окончательного утверждения.
        • Working Draft (Рабочий проект ) - более зрелая версия черновика после обсуждения и внесения поправок для рассмотрения сообществом.
        • Editor"s draft (Редакторский черновик ) - черновая версия стандарта после внесения правок редакторами проекта.
        • Draft (Черновик спецификации ) - первая черновая версия стандарта.
        ×

        Браузеры

        none, disc, circle, square, decimal, lower-alpha, upper-alpha, lower-roman, upper-roman 4 12 1 7 1 1
        lower-latin, upper-latin, lower-greek, armenian, georgian 8 12 1 6 1 1
        decimal-leading-zero 8 12 1 8 1 1

        23.02.2017

        Пока нет


        Всем привет!
        В сегодняшнем уроке я расскажу о том, как в CSS можно управлять внешним видом , а именно, создавать маркированные и нумерованные списки, оформлять списки маркеров изображением, а также, если нужно, вообще убирать любые обозначение маркированного списка.
        Постараюсь этот урок не затягивать и не писать много информации. Но это только постараюсь, а там как получится.

        Вид маркера в списке

        Свойство «LIST-STYLE-TYPE»
        Правилом «list-style-type » можно задать вид маркера, например, чтобы отображались цифры, буквы, квадратики, кружочки и др.

        Свойство:

        • none без маркера

        - маркированные списки:

        • disk – маркер в виде закрашенного круга;
        • circle – маркер в виде незакрашенного круга;
        • square – маркер в виде закрашенного квадрата;

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

        • decimal – обычные десятичные числа (1,2,3,4,5 и т. д.);
        • upper-roman – большие римские цифры (I, II, III, IV, V и т.д.);
        • lower-roman – маленькие римские цифры (i, ii, iii, iv, v и т.д.);
        • upper-alpha – большие буквы (A, B, C, D, E и т. д.);
        • lower-alpha – малые буквы (a,b,c,d,e и т.д.)

        Li { list-style-type: circle; /* Маркеры в виде незакрашенного кружочка */ }

        Полный пример:

        Основы CSS

        • текст №1
        • текст №2

        Результат:

        Если нужно убрать маркер из списка, тогда воспользуйтесь свойством «none »:

        Li { list-style-type: none; /* Убираем маркеры */ }

        Результат:

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

        Свойство « LIST-STYLE-POSITION »
        Правилом «list-style-position » можно указать положение маркера.

        Свойство:

        • outside – за пределами основного блока списка;
        • inside – внутри основного блока списка.

        Li { list-style-position: inside; /* положение маркера */ }

        Цвет маркера в списке

        Свойство « COLOR »
        Вам уже известно правило «color », с помощью которого можно не только менять цвет текста, но и цвет маркера. Посмотрите .

        Свойства списков в css

        • Текст №1
        • Текст №2

        Результат:

        Картинка вместо маркера в списке

        Свойство « LIST-STYLE-IMAGE »
        Если вам не нравится стандартный вид нумерованных или маркированных списков, вы можете воспользоваться правилом «list-style-image » и вместо обычных маркеров поставить картиночные.

        Синтаксис:

        List-style-image: url(картинка.png);

        LI { list-style-image: url("marker1.png"); /* изображение маркера */ }

        «marker1.png » - это картинка маркера.

        Результат:

        Отступ маркера в списке

        Свойство «PADDING-LEFT»
        Если вам нужно сделать отступ от маркера до текста, воспользуйтесь правилом «padding-left ».

        Li { padding-left: 30px; /* Отступ от маркера до текста */ }

        Результат:

        ПОДАРОК ДЛЯ ТЕХ, КТО ДОЧИТАЛ ДО КОНЦА

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

        Li { list-style-type: none; /* Убираем исходную нумерацию у списка */ } ul { counter-reset: list 5; /* Инициируем счетчик */ } ul li:before { counter-increment: list; /* Увеличиваем значение счетчика */ content: counter(list) ". "; /* Выводим число */ }

        Результат:

        Жду вас на следующих уроках! Не забывайте подписываться!

        Предыдущая запись
        Следующая запись



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: