nth-child
是一个 CSS 选择器,用于选择特定顺序的子元素。它不是 JavaScript 的一部分,而是 CSS 的一部分,但可以在 JavaScript 中通过操作 DOM 来使用或修改与 nth-child
相关的样式。
nth-child(an+b)
选择器匹配其父元素的第 an+b
个子元素,其中 a
和 b
是整数,n
是从 0 开始的自然数。例如,nth-child(2n+1)
会选择所有奇数位置的子元素。
an+b
的值来选择不同的元素序列。nth-child(n)
:选择所有子元素,n
从 1 开始计数。nth-child(odd)
:选择所有奇数位置的子元素。nth-child(even)
:选择所有偶数位置的子元素。nth-child(an+b)
:选择从第 b
个开始,每隔 a-1
个元素选择一个。假设你有一个无序列表,想要实现斑马条纹效果:
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
<li>Item 4</li>
<li>Item 5</li>
</ul>
你可以使用以下 CSS:
ul li:nth-child(odd) {
background-color: #f2f2f2;
}
ul li:nth-child(even) {
background-color: #ffffff;
}
这样,奇数位置的列表项会有浅灰色背景,而偶数位置的列表项会有白色背景。
nth-child
是基于 1 开始的计数,而不是基于 0。nth-child
的计数中。这可能会导致选择器匹配到不期望的元素。为了避免这种情况,可以使用 nth-of-type
选择器,它只计算同类型的子元素。nth-child
选择器没有按预期工作,首先检查选择器的拼写和语法是否正确。nth-of-type
选择器。nth-child
规则。可以使用浏览器的开发者工具来检查元素的计算样式和层叠规则。领取专属 10元无门槛券
手把手带您无忧上云