Сложный селектор не работает в последней версии blink: nth-child (2): nth-last-child (2) {}
есть странная проблема: после переключения blink update .groups .group:nth-child(2):nth-last-child(2){}
просто перестаньте работать.
Но он все еще хорошо работает в webkit и gecko. Есть идеи, как это исправить?
HTML
<div class="groups">
<div class="group"></div>
<div class="group"></div>
<div class="group"></div>
</div>
CSS
.groups .group{
background-color:#000;
}
.groups .group:first-child{
background-color:yellow;
}
.groups .group:nth-child(2):nth-last-child(2),
.groups .group:nth-child(2):last-child{
background-color:red;
}
.groups .group:last-child:nth-child(3){
background-color:green;
}
.groups{
font-size:0;
}
.groups .group{
display:inline-block;
height:100px;
width:30px;
}
Вы можете увидеть, как он работает здесь: http://jsfiddle.net/LAq73/1/
Как он работает в режиме мигания (хром):
Как это работает в сафари (webkit):
И окончательно FF:
Есть идеи, как это исправить?
Ответы
Ответ 1
Использование nth-last-of-type вместо nth-last-child сохраняет день.
.groups .group{
background-color:#000;
}
.groups .group:first-child{
background-color:yellow;
}
.groups .group:nth-child(2):nth-last-of-type(2),
.groups .group:nth-child(2):last-child{
background-color:red;
}
.groups .group:last-child:nth-child(3){
background-color:green;
}
.groups{
height:100px;
font-size:0;
line-height:0;
}
.groups .group{
display:inline-block;
height:100px;
width:30px;
}
http://jsfiddle.net/LAq73/3/
Ответ 2
Вы делаете это слишком сложным.
Запись:
.groups .group:first-child{ /*first child*/
background-color:yellow;
}
.groups .group:nth-child(2){ /*second child*/
background-color:red;
}
.groups .group:last-child{ /*last child*/
background-color:green;
}
Рабочая скрипка здесь.