Функция CSS `counter()`
Базовая поддержка Широко доступна
Эта функция хорошо зарекомендовала себя и работает на множестве устройств и в различных версиях браузеров. Она поддерживается браузерами с июля 2015 года.
counter() — это CSS-функция, которая возвращает строку, представляющую текущее значение именованного счётчика, если он существует.
Функция counter() обычно используется в псевдоэлементе с помощью свойства content, но теоретически её можно использовать везде, где поддерживается значение <string>.
Попробуйте
.double-list {
counter-reset: count -1;
}
.double-list li {
counter-increment: count 2;
}
.double-list li::marker {
content: counter(count, decimal) ") ";
}
<p>Best Dynamic Duos in Sports:</p> <ol class="double-list"> <li>Simone Biles + Jonathan Owens</li> <li>Serena Williams + Venus Williams</li> <li>Aaron Judge + Giancarlo Stanton</li> <li>LeBron James + Dwyane Wade</li> <li>Xavi Hernandez + Andres Iniesta</li> </ol>
Синтаксис
/* Basic usage */ counter(counter-name); /* changing the counter display */ counter(counter-name, upper-roman)
Счётчики сами по себе не оказывают видимого эффекта. Функции counter() и counters() делают счётчики полезными, возвращая заданные разработчиком строки (или изображения).
Значения
Функция counter() принимает до двух параметров. Первый параметр — это <counter-name>. Второй параметр — необязательный <counter-style>.
-
<counter-name> <custom-ident>, задающий имя счётчика. Это то же имя с учётом регистра, которое используется в значениях свойствcounter-resetиcounter-increment. Имя счётчика не может начинаться с двух дефисов и не может бытьnone,unset,initialилиinherit.-
<counter-style> - Имя
list-style-type,counter-style-nameили функцияsymbols(). Именем стиля счётчика может бытьnumeric,alphabeticилиsymbolicпредопределённый стиль счётчика, сложный предопределённый стиль счётчика для восточноазиатской или эфиопской письменности либо другой предопределённый стиль счётчика. Если параметр не указан, по умолчанию используется стиль счётчикаdecimal.
Примечание: Чтобы объединить значения счётчиков при вложении счётчиков, используйте функцию counters(), которая принимает дополнительный параметр <string>.
Формальный синтаксис
<counter()> = counter( <counter-name>, <counter-style>? ) <counter-name> = <custom-ident> <counter-style> = <counter-style-name> | symbols() <counter-style-name> = <custom-ident>
Примеры
lower-roman и lower-alpha
В этом примере мы отображаем счётчик, используя стили списков lower-roman и lower-alpha.
HTML
<ol> <li></li> <li></li> <li></li> </ol>
CSS
ol {
counter-reset: count;
}
li {
counter-increment: count;
}
li::after {
content:
"[" counter(count, lower-roman) "] == ["
counter(count, lower-alpha) "]";
}
Результат
Отображение счётчика с использованием трёх стилей
В этом примере мы трижды используем функцию counter().
HTML
<ol> <li></li> <li></li> <li></li> </ol>
CSS
Мы используем функцию counter() с тремя разными стилями счётчиков, включая десятичный стиль по умолчанию. Мы добавили отступы для списка, чтобы освободить место для длинной строки ::marker.
ol {
counter-reset: listCounter;
padding-left: 5em;
}
li {
counter-increment: listCounter;
}
li::marker {
content:
"Item #" counter(listCounter) " is: ";
}
li::after {
content:
"[" counter(listCounter, decimal-leading-zero) "] == ["
counter(listCounter, upper-roman) "]";
}
Результат
Спецификации
| Спецификация |
|---|
| Модуль CSS Lists and Counters, уровень 3 # counter-functions |
| Модуль CSS Counter Styles, уровень 3 # extending-css2 |
Совместимость с браузерами
| Компьютеры | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | WebView на iOS | |
counter |
1 |
12 |
1 |
9.2 |
3 |
18 |
4 |
10.1 |
1 |
1.0 |
4.4 |
1 |
См. также
- Использование счётчиков CSS
counter-resetcounter-setcounter-increment@counter-style- Функция CSS
counters() - Модуль списков и счётчиков CSS
- Модуль стилей счётчиков CSS
- Модуль генерируемого содержимого CSS
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Values/counter