Вы в замешательстве. оператор применяется к классам с именем .red класса, а не элементом div.
от вопрос уже есть ответ здесь:
Могу ли я объединить: nth-child () или: nth-of-type () с произвольным селектором? 4 ответаМожно ли заставить псевдоселектор nth child работать с определенным классом?
Смотрите этот пример:http://jsfiddle.net/fZGvH/
Я хочу, чтобы второй DIV.red стал красным, но он не применяет цвет, как ожидалось.
Мало того, но когда вы укажете это, он изменит 5-й DIV на красный:
div.red:nth-child(6)
Когда вы указываете это, он меняет 8-й DIV на красный:
div.red:nth-child(9)
Кажется, один DIV позади. В примере только 8 тегов DIV, поэтому я не знаю, почему nth-child (9) вообще работает. Тестирование с использованием Firefox 3.6, но в моем реальном рабочем коде та же проблема возникает в Chrome. Я не понимаю что-то о том, как это должно работать, был бы признателен за разъяснения.
Кроме того, это изменит 6-й DIV на красный, но я на самом деле хочу, чтобы он изменил второй DIV.red на красный:
div.red:nth-of-type(6)
И я не понимаю, почему nth-child () и nth-of-type () отвечают по-разному, поскольку в документе только восемь тегов одного типа.