第n个孩子(2n)不行?



这段代码有什么问题:

<div class="clearfix">
  <div id="entry1">
    <div class="post"></div>
  </div>
  <div id="entry2">
    <div class="post"></div>
  </div>
  <div id="entry3">
    <div class="post"></div>
  </div>
  <div id="entry4">
    <div class="post"></div>
  </div>
  <div id="entry5">
    <div class="post"></div>
  </div>
  <div id="entry6">
    <div class="post"></div>
  </div>
</div>
CSS

.post {
  width: 100px;
  height: 100px;
  margin-right: 10px;
  float: left;
  background-color: #222;
}
.post:nth-child(2n) {
  background-color: red;
}

小提琴→https://jsfiddle.net/twvxzhwm/

为什么nth-child(2n)不能工作?

我该怎么做才能修好它?

p。我不能更改#entry$→它来自CMS。我只能使用CSS或JS

这是因为它们不是直接的兄弟姐妹,尽管你有正确的想法,这是你可以解决它的一种方法。

.post {
  width: 100px;
  height: 100px;
  margin-right: 10px;
  float: left;
  background-color: #222;
}
.clearfix div:nth-child(2n) > .post {
  background-color: red;
}
<div class="clearfix">
  <div id="entry1">
    <div class="post"></div>
  </div>
  <div id="entry2">
    <div class="post"></div>
  </div>
  <div id="entry3">
    <div class="post"></div>
  </div>
  <div id="entry4">
    <div class="post"></div>
  </div>
  <div id="entry5">
    <div class="post"></div>
  </div>
  <div id="entry6">
    <div class="post"></div>
  </div>
</div>

你会注意到我选择了.clearfix div:nth-child(2n)这意味着在。clearfix中每隔一秒选择一个div

然后我说> .post的意思是选择的孩子与类post添加以下样式,背景颜色在这个例子中。

nthchild是一个非常特殊的CSS规则,可以用在很多方面。

例如:

我的HTML:

<ul class='item-container my-class'>
    <li>item 1</li>
    <li>item 2</li>
    <li>item 3</li>
    <li>item 4</li>
    <li>item 5</li>
    <li>item 6</li>
    </ul>

选择前5个元素:

.my-class > * :nth-child(-n+5) {
    display: block;
}

选择第五个元素:

.my-class > * :nth-child(5) {
    display: block;
}

有关第n个子选择器的更多信息,请参见:http://nthmaster.com/

相关内容

  • 没有找到相关文章

最新更新