【发布时间】:2016-02-29 23:22:00
【问题描述】:
我经常使用 nth-child() ——但现在我对这种行为感到困惑。我有一个包装元素(id=content)和很多子元素(class=el)。当这是包装器中的唯一内容时,一切都很好。当我在“el”对象之前放置一个 div(无类)时,nth-child(奇/偶)的顺序是错误的。
#content {
background:rgb(200,200,200);
}
.el {
height:20px;
background:grey;
margin-bottom:10px;
}
.el:nth-child(odd) {
background:green;
}
.el:nth-child(even) {
background:red;
}
<div id="content">
<div></div> (or <i>, <span>, ... any element)
<div class="el">Test 1</div>
<div class="el">Test 1</div>
<div class="el">Test 1</div>
<div class="el">Test 1</div>
<div class="el">Test 1</div>
<div class="el">Test 1</div>
</div>
我为此设置了一个 JSFiddle 示例:https://jsfiddle.net/5p2uh5e5/1/(第一行应该是绿色的)。如果您在“el”对象之前删除 div,则排序是正确的。即使您在“el”对象之前放置了第二个 any 类型的对象。
我怎样才能通过 CSS 选择奇数/偶数的“el”-Divs?
【问题讨论】:
-
好吧,我在 Fiddle 上看不到任何错误...
-
我不同意重复的选择......这主要集中在对 jsfiddle 如何工作的误解。有更好的副本。
标签: css css-selectors