为什么第一节元素似乎包含在第n个孩子的兄弟姐妹计数中?

问题描述:

我特别针对的是第n个孩子(2n),但与给定班级的第一,第三等兄弟姐妹正在使用css。为什么第一节元素似乎包含在第n个孩子的兄弟姐妹计数中?

http://jsfiddle.net/relitnosmoge/9HCnH/1/

.grid > section.fifty:nth-child(2n) { 
     background: red !important; 
     margin-right: 0 !important; 
     margin-left: 0 !important; 
} 
<article class="block grid"> 
    <section class="block hundred"></section> 
    <section class="block fifty"></section> 
    <section class="block fifty"></section> 
    <section class="block fifty"></section> 
    <section class="block fifty"></section> 
</article> 
+0

这些索引是基于1而不是零基于 – Musa

+0

无论如何用css可靠地针对特定类的选定索引(如3),无论总元素?此外,为什么所有兄弟姐妹都包含在索引中,而不管它们是否是目标类的一部分? – Jameson

+0

那么选择器是nth- **孩子**不是nth-child-tageret – Musa

使用

nth-child(even) 

nth-child(2n+2) 

将工作我猜。你能试试吗?

与你的班级一起使用,即五十将只选择五十而不是一百。

+0

第n个孩子(偶数)选择与第n孩子(2n)相同的兄弟姐妹,因为所有部分都包含在总同胞计数(或索引)中。据我了解,至少。 2n + 2唯一的问题是我需要一种方法来选择给定类的特定间隔,而不管“网格”父节点中的兄弟节点。 2n + 1只适用于这个给定的实例。 – Jameson