jQuery:奇数和:nth-​​child CSS3不同

我发现jQuery:奇数选择器和CSS3 nth-child(奇数)的工作方式不同。 http://jsfiddle.net/TMDwT/5/

在黄色它是CSS nth-child(奇数),如果你取消注释JS和评论背景:在CSS中黄色,你会发现它以另一种方式找到它。

任何人都可以说我是如何获得与jQuery相同的结果但是使用CSS3?

谢谢!

是的, :奇数和:nth-​​child(奇数)不是一回事:

  • :odd匹配匹配元素中的奇数项,即应用选择器的jQuery对象的内容,

  • :nth-child(odd)匹配各自父母中的奇数项目。

这与以下之间的区别相同:first:first-child ,或:last:last-child

更新:正如zzzzBov和BoltClock正确地指出的那样, :odd选择器是从零开始的,但是:nth-child()选择器是从1开始的。 这意味着即使您将两个选择器应用于元素的完整子列表(从而消除了:odd:nth-child(odd)之间的差异),它们仍然不会匹配相同的元素。