我已经创建了以下JSFiddle来说明我的问题:http://jsfiddle.net/bj3y34op
正如您所看到的,我使用以下选择器来定位具有不同nth子范围内的.result和.selected类的子项。
<style>
.result.selected:nth-child(n+1):nth-child(-n+3) {
background-color: red;
}
.result.selected:nth-child(n+4):nth-child(-n+6) {
background-color: green;
}
.result.selected:nth-child(n+7):nth-child(-n+9) {
background-color: orange;
}
</style>
<div class="result"></div>
<div class="result selected"></div>
<div class="result"></div>
<div class="result selected"></div>
<div class="result"></div>
<div class="result selected"></div>
<div class="result selected"></div>
<div class="result selected"></div>
<div class="result selected"></div>
<div class="result"></div>
总共只有6个项目同时包含.result和.selected类。我期望看到的是前三个项目,两个类都有红色背景,接下来三个有绿色背景。但是,正如您所看到的那样,它并没有发生,相反,绿色背景仅应用于两个类都在前三个项目中且只有类.result的项目。
我是不是错误地使用了它?
使用:nth-of-type给出相同的结果:http://jsfiddle.net/bj3y34op/5/