counters()
版本:CSS3
CSS 函数 counters()是一个嵌套计数器,返回表示指定计数器当前值的连接字符串。counters()函数有两种形式:counters(name, string)或 counters(name, string, style)。它通常和伪元素搭配使用,但是理论上可以在支持
示例
/* Simple usage - style defaults to decimal */ counters(countername, '-'); /* changing the counter display */ counters(countername, '.', upper-roman)
浏览器支持
![]() | ![]() | ![]() | ![]() | ![]() |
IE8以上版本的浏览器都支持counters() | ||||
语法
counters() (<custom-ident>,<string>,<counter-style>?)
取值
- <custom-ident>:自定义标识。一个标识计数器的名称,区分大小写,并且与
counter-reset和counter-increment中的“名称”相同。名称不能以两个破折号开头,并且不能为none, unset, initial,或 inherit。 - <counter-style>:计数器样式。计数器样式名称或
symbols()函数,其中计数器样式名称是数字,字母或符号的简单预定义计数器样式,复杂的东亚或埃塞俄比亚长手预定义计数器样式,或其他预定义计数器样式。如果省略,则计数器样式默认为十进制。 - <string>:字符串。任意数量的文本字符。非拉丁字符必须使用其 Unicode 转义序列进行编码:例如,
\000A9表示版权符号。
实例
<ol>
<li>Node
<ol>
<li>Node</li>
<li>Node</li>
</ol>
</li>
<li>Node</li>
<li>Node</li>
</ol>
ol{counter-reset: item;}
li:before{counter-increment: item; content: counters(item,".");}
<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) ;
}
<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);
}
<!DOCTYPE html>
<html lang="zh-cmn-hans">
<head>
<meta charset="utf-8"/>
<style>
ol{
margin:0;
padding:0002em;
list-style:none;
counter-reset:item;
}
li:before{
counter-increment:item;
content:counters(item,".");
color:#f00;
}
</style>
</head>
<body>
<olclass="test">
<li>node
<ol>
<li>node
<ol>
<li>node</li>
<li>node</li>
<li>node</li>
</ol>
</li>
<li>node</li>
</ol>
</li>
<li>node</li>
<li>node</li>
</ol>
</body>
</html>效果图:






