CSS счетчики
CSS счетчики, в своей сущности, переменные CSS, значения которых могут быть инкрементированы при помощи CSS для отслеживания количества их использования. Они позволяют регулировать внешний вид контента, основываясь на его местоположении в документе. CSS счетчики реализованы в CSS 2.1 (ссылка на спецификацию).
Значение счетчика сбрасывается (инициализируется) при помощи counter-reset
.
counter-increment
может быть отображен на странице, используя функцию counter() или counters() в свойстве
content
.
Использование счетчиков
Для того, чтобы использовать CSS счетчики, сначала необходимо сбросить их значение (0 по умолчанию). Для того, чтобы отобразить значение счетчика — используйте функцию counter().
Пример:
HTML
<h3>Вступление</h3> <h3>Основная часть</h3> <h3>Заключение</h3>
CSS
body { counter-reset: section; } h3::before { counter-increment: section; content: "Секция " counter(section) ": "; }
Результат
Секция 1: Вступление Секция 2: Основная часть Секция 3: Заключение
Вложенные счетчики
CSS счетчики могут быть очень полезны для создания нумерованых списков, потому что новая сущность CSS счетчика автоматически создается в дочерних элементах. Используя функцию counters()
, можно вставить строку между разными уровнями вложенных счетчиков. Пример:
HTML
<ol> <li>item</li> <!-- 1 --> <li>item <!-- 2 --> <ol> <li>item</li> <!-- 2.1 --> <li>item</li> <!-- 2.2 --> <li>item <!-- 2.3 --> <ol> <li>item</li> <!-- 2.3.1 --> <li>item</li> <!-- 2.3.2 --> </ol> <ol> <li>item</li> <!-- 2.3.1 --> <li>item</li> <!-- 2.3.2 --> <li>item</li> <!-- 2.3.3 --> </ol> </li> <li>item</li> <!-- 2.4 --> </ol> </li> <li>item</li> <!-- 3 --> <li>item</li> <!-- 4 --> </ol> <ol> <li>item</li> <!-- 1 --> <li>item</li> <!-- 2 --> </ol>
CSS
ol { counter-reset: section; list-style-type: none; } li::before { counter-increment: section; content: counters(section,".") " "; }
Результат
Живой пример:
See the Pen Использование счетчиков в HTML-элементах by Denis (@deniscreative) on CodePen.0
Источник — https://developer.mozilla.org/ru/docs/Web/CSS/CSS_Lists_and_Counters/Using_CSS_counters
В одной из статей я приводил пример, валидации формы с помощью CSS, но с ограниченными…
Недавно применял на сайте интересную анимацию, выглядит она как гифка, но по факту это одна…
Столкнулся с проблемой редиректа в ModX. Стандартные варианты редиректа не работают. Нашел такое решение: Если…
Анимируем элементы на странице при прокрутке. В данном примере рассмотрим плавное появление элементов при скроле…