Я вижу что-то довольно странное в Chrome 10 с : first-child: before
.
С этим HTML
- One
- Two
- Three
- Four
- Five
- Siz
и этим CSS
ul {
list-style-type: none
}
li:before {
content: "* "
}
li:first-child:before {
content: ""
}
Может ли кто-нибудь объяснить, почему
отображается со звездочкой в Chrome 10.0.648.204 в Win XP SP3? См. http://jsfiddle.net/MxtHm/
Но если я изменю CSS на
ul {
list-style-type: none
}
li:before {
content: "* "
}
li:first-child {
background: none
}
li:first-child:before {
content: ""
}
отобразит без звездочки. См. http://jsfiddle.net/SGRej/
Safari 5.0.4 и Firefox 3.6.16 отображают оба примера одинаково. Я просмотрел и книгу Мейера, и спецификацию CSS в поисках объяснения, но безуспешно, и валидатор CSS не жалуется на CSS.
Чрезвычайно странно то, что если я проверяю элемент в Chrome, он показывает, что li: first-child: before
отменяет правило li: before
.
JSFiddle использует строгий DOCTYPE XHTML 1.0, но я также вижу это с HTML5 DOCTYPE.
Спасибо.
2011 -04-28 РЕДАКТИРОВАТЬ: Похоже, это было исправлено в Chrome 11.0.696.57 вместе с другими аналогичными проблемами, связанными с псевдоэлементами.