2011-01-05 4 views
0
<div class="boxcontent"> 

<div>some content this div may be missing [dynamic genrated]</div> 

<div class="elem"></div> 
<div class="elem"></div> 
<div class="elem"></div> 
</div> 

<div class="boxcontent"> 


<div class="elem"></div> 
<div class="elem"></div> 
<div class="elem"></div> 
</div> 


<div class="boxcontent"> 


<div class="elem"></div> 
<div class="elem"></div> 
<div class="elem"></div> 
</div> 

я нашел проблему, когда я выбираю их с помощью селектора css3 п-го ребенка (3), то они выбирают 2-й DIV в первом .boxcontnent дел.Как выбрать 3-й DIV, который имеет определенный класс CSS

, когда я говорю это последний раз, когда они на точку, но никогда не чувствую эту проблему я имею здесь вид:

http://jsfiddle.net/szz3C/1/

я хочу, чтобы выбрать третий DIV или все boxcontent класса DIV, но в первом поле я найден 2-й выбор div вместо третьего.

являются их любым гуманным решить эту даже с помощью CSS3 или JQuery спасибо за поддержку, если кто-то может решить эту

ответ

0

Там нет ничего хорошего «третий класса» селектора (или любого другого селектор другого реляционной класса на основе, они» re все sibling на основе, включая сверху type).

Ваша лучшая альтернатива (данный пример) здесь будет :nth-last-child() который получает .box<div>если это последний ребенок в его родителей, как это:

div.box:nth-last-child(1){ background-color:green; } 

You can try it out here.

0

Вы можете попробовать

.boxcontent .elem+.elem+.elem { /*3rd .elem*/ } 
.boxcontent .elem+.elem+.elem+.elem { /*reset css if there are 4 .elem divs*/ } 

есть также :last-child селектор

+0

Будьте осторожны с ': последний-child' это buggier чем': п-й последний-ребенок() 'в несколько более старых версий Opera, Safari и Firefox ... где as: nth-last-child() 'будет просто проигнорирован ими. –

0

Я думаю, вы можете использовать: в последнюю ребенка за все, кроме IE8 и ниже. Использовать JQuery, чтобы покрыть это?

$(".boxcontent:last-child").css({color:"red"}); 

Но я бы не стал доверять javascript, чтобы сделать что-то важное для структуры.

http://www.quirksmode.org/css/contents.html

3

Попробуйте CSS:

div:nth-of-type(3) { ... }