语法:
:nth-child(an + b)
参数说明:
- a:步进值,决定选择的间隔。
- b:起始偏移量,从第几个开始。
- n:自然数(从0递增的整数)。
用法
选择偶数/奇数元素:
li:nth-child(odd) { color: red; }
li:nth-child(even) { color: blue; }
自定义间隔:
li:nth-child(3n) { background-color: yellow; }
li:nth-child(3n+3) { font-weight: bold; }
特定顺序:
li:nth-child(1) { text-transform: uppercase; }
li:nth-child(6) { text-transform: lowercase; }
总结
span:nth-child(an+b)
- 浏览器遍历父元素,找到父元素下所有位置符合 an+b 公式的 span 元素;
- n 为自然数,从 0 开始;
- 比如 1n+1 可简写为 n+1,意味着:匹配到位置为 (0 + 1), (1 + 1), (2 + 1), (3 + 1) … 的元素;
- 比如 2n+0 可简写为 2n,意味着:匹配到位置为 (2 * 0), (2 * 1), (2 * 2), (2 * 3) … 的元素;
- 比如 3n+4,意味着:匹配到位置为 (3 * 0 + 4), (3 * 1 + 4), (3 * 2 + 4) … 的元素