counters()
åºçº¿
广æ³å¯ç¨
èª 2015å¹´7æ èµ·ï¼æ¤ç¹æ§å·²å¨ä¸»æµæµè§å¨ä¸å¾å°æ¯æï¼å¯å¨å¤§å¤æ°è®¾å¤åæµè§å¨çæ¬ä¸æ£å¸¸ä½¿ç¨ã
CSS 彿° counters() æ¯ä¸ä¸ªåµå¥è®¡æ°å¨ï¼è¿å表示æå®è®¡æ°å¨å½åå¼çè¿æ¥å符串ãcounters() 彿°æä¸¤ç§å½¢å¼ï¼counters(name, string) æ counters(name, string, style)ãå®é常å伪å
ç´ æé
使ç¨ï¼ä½æ¯ç论ä¸å¯ä»¥å¨æ¯æ<string>å¼çä»»ä½å°æ¹ä½¿ç¨ãçæçææ¬æ¯å
·æç»å®åç§°çææè®¡æ°å¨çå¼ï¼ä»æå¤å±å°æå
å±ï¼ä¹é´ç±æå®å符串åéã计æ°å¨ä»¥æç¤ºçæ ·å¼åç°ï¼å¦ææªæå®æ ·å¼ï¼åé»è®¤ä¸ºåè¿å¶ã
/* Simple usage - style defaults to decimal */
counters(countername, '-');
/* changing the counter display */
counters(countername, '.', upper-roman)
计æ°å¨æ¬èº«æ²¡æå¯è§çææï¼èæ¯éè¿ counters() 彿°ï¼å counter() 彿°ï¼è¿åå¼å人åå®ä¹çå
容ä»è使计æ°å¨æ¥æå¾æ£çä½ç¨ã
夿³¨ï¼counter() 彿°å¯ä»¥ä¸ä»»ä½ CSS 屿§ä¸èµ·ä½¿ç¨ï¼ä½æ¯å¯¹"content"以å¤ç屿§çæ¯ææ¯è¯éªæ§çï¼å¯¹ type-or-unit åæ°çæ¯æå¾å°ã
å¨ä½¿ç¨æ¤åè½ä¹åï¼è¯·ä»ç»æ£æ¥æµè§å¨å ¼å®¹æ§è¡¨ ã
è¯æ³
>Values
<custom-ident> èªå®ä¹æ è¯-
ä¸ä¸ªæ è¯è®¡æ°å¨çåç§°ï¼åºå大å°åï¼å¹¶ä¸ä¸
counter-resetåcounter-incrementä¸çâåç§°âç¸åãåç§°ä¸è½ä»¥ä¸¤ä¸ªç ´æå·å¼å¤´ï¼å¹¶ä¸ä¸è½ä¸ºnone,unset,initial, æinheritã <counter-style> 计æ°å¨æ ·å¼-
计æ°å¨æ ·å¼åç§°æ
symbols()彿°ï¼å ¶ä¸è®¡æ°å¨æ ·å¼åç§°æ¯æ°åï¼åæ¯æç¬¦å·çç®åé¢å®ä¹è®¡æ°å¨æ ·å¼ï¼å¤æçä¸äºæåå¡ä¿æ¯äºé¿æé¢å®ä¹è®¡æ°å¨æ ·å¼ï¼æå ¶ä»é¢å®ä¹è®¡æ°å¨æ ·å¼ã妿çç¥ï¼å计æ°å¨æ ·å¼é»è®¤ä¸ºåè¿å¶ã <string> å符串-
ä»»ææ°éçææ¬å符ãéæä¸åç¬¦å¿ é¡»ä½¿ç¨å ¶ Unicode 转ä¹åºåè¿è¡ç¼ç ï¼ä¾å¦ï¼
\ 000A9表示çæç¬¦å·ã
å½¢å¼è¯æ³
counters( <custom-ident>, <string>, <counter-style>? ) where <counter-style> = <counter-style-name> | symbols() where <counter-style-name> = <custom-ident>
示ä¾
>default value compared to upper Roman
HTML
<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>
CSS
ol {
counter-reset: listCounter;
}
li {
counter-increment: listCounter;
}
li::marker {
content: counters(listCounter, ".", upper-roman) ") ";
}
li::before {
content: counters(listCounter, ".") " == "
counters(listCounter, ".", lower-roman);
}
ç»æ
decimal-leading-zero compared to lower-alpha
HTML
<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>
CSS
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);
}
ç»æ
è§è
| è§è |
|---|
| CSS Lists and Counters Module Level 3> # counter-functions> |
| CSS Counter Styles Level 3> # extending-css2> |