如何在CSS中只选择一些孩子?

时间:2013-08-13 08:08:49

标签: css css-selectors

我的HTML中有一些div,动态数量为div

如何只选择div 2,5,8,11?

我试过这个:nth-child(2n+3)但不完全是我需要的

以下是代码:

<!DOCTYPE html>
<html>
  <head>
      <style>
          .a:nth-child(2n+3) { background:#ff0000; }
      </style>
  </head>
  <body>
    <p class="a">The first paragraph.</p>
    <p class="a">The second paragraph.</p>
    <p class="a">The third paragraph.</p>
    <p class="a">The fourth paragraph.</p>
    <p class="a">The fifth paragraph.</p>
    <p class="a">The sixth paragraph.</p>
    <p class="a">The seventh paragraph.</p>
    <p class="a">The eight paragraph.</p>
    <p class="a">The ninth paragraph.</p>
    <p class="a">The seventh paragraph.</p>
    <p class="a">The eight paragraph.</p>
    <p class="a">The ninth paragraph.</p>
  </body>
</html>

3 个答案:

答案 0 :(得分:10)

编辑如果只需要2,5,8,11,那么答案就是:

p:nth-child(3n+2)
{
   background: #ccc;
}

<小时/> 选择第2,3,5,8,1段:

p:nth-child(3n+2),p:nth-child(3)
{
   background: #ccc;
}

FIDDLE

我必须分别添加p:nth-​​child(3),因为它不适合每次+3的一般模式。

答案 1 :(得分:1)

E:nth-​​child(n)一个E元素,它的父元素的第n个孩子

例如:

 div:nth-child(2),div:nth-child(5){color:red;}

答案 2 :(得分:0)

如果正在动态插入div,你能否给每个div一个像'nested1,nested2'等的id?如果你使用这种方法,记住不要用整数开始你的id,因为CSS不会把它拿起来。