:nth-child(even)
和:even
看起来很相似,但选择了不同的元素。请让我知道不同之处。
快乐编码......
答案 0 :(得分:4)
这是一个说明差异的例子:
:even
匹配您选择的元素集中的每个第2个元素。 :nth-child(even)
匹配其各自父母的偶数子元素的任何元素。
因此,在示例中,您会看到两个选择器影响不同的元素。带有红色文本的元素与所选类匹配,甚至是父div的子编号。具有蓝色背景的那些匹配所选择的类,甚至在该选择范围内。
所以:
.something:nth-child(odd)
将每个元素与类something
匹配,该类是其父项的偶数子项。
.something:even
将所有其他元素与类something
匹配。 (无论与兄弟姐妹有什么关系)
答案 1 :(得分:3)
:even
从0开始,而:nth-child
从1开始。这来自:even
特别要注意,基于0的索引意味着,直观地说:甚至选择匹配集合中的第一个元素,第三个元素等。
这适用于:nth-child
因为jQuery的实现:nth-child(n)严格来自CSS规范,n的值是“1-indexed”,这意味着计数从1开始。然而,对于所有其他选择器表达式,jQuery遵循JavaScript的“0索引”计数。