如何让nth-child伪类选择器与指定的类一起使用?
请看这个例子:http://jsfiddle.net/fZGvH/
我想要第二个DIV.red变成红色,但它没有按预期应用颜色。
而且,当你指定这个时,它会将第五个DIV变成红色:
div.red:nth-child(6)
当你指定这个属性时,它会将第8个 DIV 元素变为红色:
div.red:nth-child(9)
似乎差了一个 DIV。在示例中仅有 8 个 DIV 标签,所以我不知道为什么 nth-child(9) 会起作用。在 Firefox 3.6 中进行测试,但在我的实际生产代码中,同样的问题在 Chrome 中也出现了。我没有理解这应该如何工作,希望得到澄清。
此外,这将把第六个 DIV 改成红色,但我真正想要的是将第二个 DIV.red 改为红色:
div.red:nth-of-type(6)
我不明白为什么nth-child()和nth-of-type()会有不同的响应,因为文档中只有八个相同类型的标签。
div.red:nth-child(9)
不会使任何东西变成红色。我在你的 fiddle 上尝试了一下(请注意,您可以将 CSS 放置在 CSS 面板中,而不是在<style>
标签中)。 - BoltClockdiv.red:nth-child(9)
时,第8个div会变成红色。div:nth-child(2)
会将第一个div变成橙色。我无法弄清楚,但正如我所说,它在应用程序中的工作方式相同,有点奇怪。 - Arne Stephensson