2014-09-23 7 views
0

Я использовал п-й ребенок и раньше, но по какой-то причине не может предназначаться правильный DIV:энный Ребенок в CSS

<div class='main'>...</div> 
    <div class='color'>...</div> 
    <div class='number'>...</div> 
    <div class='target_div'>...</div> 
     <div class='target_me_one'>...</div> 
     <div class='target_me_two'>...</div> 
<div class='main'>...</div> 
<div class='main'>...</div> 
<div class='main'>...</div> 
<div class='main'>...</div> 
<div class='main'>...</div> 
<div class='main'>...</div> 

Я надеялся на первое вхождение основной, второй ребенок основной (номер), первый ребенок числа (target_div), а затем оба дочерних объекта target_div.

Целью этого является изменение цели target_me_one/target_me_two от первого появления main. Я не могу настроить таргетинг на эти два отдельно с помощью селекторов (из-за подключаемого модуля).

Возможно ли это, или я ушел ???

+0

Разделы только что отступы таким образом в вашем примере. Они не являются фактическими дочерними элементами. возможно, это и является причиной проблемы. Если это не так, отредактируйте вопрос с помощью селектора, который вы используете для таргетинга. Предпочтительно скрипка с минимальным кодом, который может воспроизвести проблему? – karthikr

ответ

1

Это будет делать то, что вы ожидаете, не полагаясь на классы для конкретных селекторов. Проверьте JSFiddle

 .main:first-of-type > *:nth-child(2) > *:nth-child(1) * { 
     color: red; 
     } 
+0

ahhhh отлично, спасибо! сделал именно то, что мне было нужно ... – user3007294

+0

@ user3007294 рад, что я мог бы помочь! – xian

1

Используйте «первый тип» вместо n-го ребенка.

вот jsfiddle: http://jsfiddle.net/m395kdxy/

.main:first-of-type .target_me_one { 
     background: #ff0000; 
    } 

    .main:first-of-type .target_me_two { 
     background: #ff0000; 
    } 

Пожалуйста, дайте мне знать, если он работает

+0

спасибо masum7. это тоже хорошее решение. один отправленный xian был немного больше того, что я искал. – user3007294

1

У вас нет никаких дочерних элементов для выбора.

Что вы, вероятно, думаете о селекторе :nth-of-type.

.: например

.main{ 
    /* All */ 
} 

.main:nth-of-type(1){ 
    /* First */ 
} 

.main:nth-of-type(2){ 
    /* Second */ 
} 

See the documentation.

Как обычно, обратите внимание, что это не работает в IE < 9.

+0

спасибо за головы. вы правы: nth-of-type был тем, что я искал. – user3007294

Смежные вопросы