--- title: counters() slug: Web/CSS/counters() tags: - CSS - Fonction - Reference translation_of: Web/CSS/counters() ---
La fonction CSS counters()
permet d'obtenir des compteurs imbriqués en renvoyant la concaténation des chaînes de caractères des valeurs des compteurs passés en arguments. La fonction counters()
peut s'utiliser sous deux formes :
counters(name, string)
counters(name, string, style)
Cette fonction est généralement utilisée sur des pseudo-éléments mais peut théoriquement être utilisée à tout endroit où une valeur <string>
est attendue. Le texte généré est la concaténation des compteurs en commençant par les compteurs « parents » puis en ajoutant la valeurs des compteurs « fils ». Les compteurs sont affichés avec le style indiqué (par défaut, ce sera decimal
).
/* Utilisation simple - style decimal par défaut */ counters(countername, '-'); /* Changement du style d'affichage */ counters(countername, '.', upper-roman)
Un compteur n'est pas visible en tant que tel. Les fonctions counters()
et counter()
doivent être utilisées pour créer du contenu.
Note : Bien que la fonction counters()
puisse être utilisée avec n'importe quelle propriété CSS, la prise en charge des propriétés autres que {{CSSxRef("content")}} reste experimentale.
Avant d'utiliser cette fonctionnalité en production, référez vous au tableau de compatibilité ci-après.
none
, unset
, initial
ou inherit
.<counter-style>
list-style-type
) ou une fonction symbols()
. En absence de valeur, le style utilisé sera decimal
.\000A9
représentera par exemple le symbole copyright (©).none
{{CSSSyntax}}
<ol> <li> <ol> <li></li> <li></li> <li></li> </ol> </li> <li></li> <li></li> <li> <ol> <li></li> <li> <ol> <li></li> <li></li> <li></li> </ol> </li> </ol> </li> </ol>
ol { counter-reset: listCounter; } li { counter-increment: listCounter; } li::marker { content: counters(listCounter, '.', upper-roman) ') '; } li::before { content: counters(listCounter, ".") " == " counters(listCounter, ".", lower-roman) ; }
{{EmbedLiveSample("Style_par_défaut_et_chiffres_romains", "100%", 150)}}
<ol> <li> <ol> <li></li> <li></li> <li></li> </ol> </li> <li></li> <li></li> <li> <ol> <li></li> <li> <ol> <li></li> <li></li> <li></li> </ol> </li> </ol> </li> </ol>
ol { counter-reset: count; } li { counter-increment: count; } li::marker { content: counters(count, '.', upper-alpha) ') '; } li::before { content: counters(count, ".", decimal-leading-zero) " == " counters(count, ".", lower-alpha); }
{{EmbedLiveSample("Numérotation_décimale_(avec_zéro)_et_indices_alphabétiques", "100%", 150)}}
Spécification | État | Commentaires |
---|---|---|
{{SpecName("CSS3 Lists", "#counter-functions", "CSS Counters")}} | {{Spec2("CSS3 Lists")}} | Aucune modification. |
{{SpecName("CSS2.1", "generate.html#counter-styles", "CSS Counters")}} | {{Spec2("CSS2.1")}} | Définition initiale. |
{{Compat("css.types.counters")}}
counter()