J'ai récemment rencontré un problème où je créais une liste ordonnée avec plus d'une centaine d'éléments de liste. Je l'ai configuré list-style:decimal-leading-zero;
ol{
list-style: decimal-leading-zero;
}
<ol> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> </ol> <p>...</p> <ol start="96"> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> <li>Some item</li> </ol>
Problème : Seuls les neuf premiers éléments de la liste comportent des zéros non significatifs.
Attendu : Deux zéros non significatifs dans les neuf premiers éléments de la liste et un zéro non significatif dans les éléments 10e à 99e de la liste.
Il n'y a pas de
list-stylepour trois décimales.Cependant, vous pouvez utiliser des pseudo-sélecteurs et des compteurs a> pour réaliser ce que vous voulez ici.
Code de référence :
ol { counter-reset: items; } li { display: block; counter-increment: items; } li:before { content: "00" counter(items)". "; } li:nth-child(n+10):before { content: "0" counter(items)". "; } li:nth-child(n+100):before { content: counter(items)". "; }