2013-04-23 2 views
2

Учитывая следующие HTML и CSS, я хочу выделить второй элемент в списке, используя псевдокласс класса nth-child. Как я могу изменить ниже, чтобы это сделать?Как выбрать n-й ребенок с css?

Fiddle: http://jsfiddle.net/jeljeljel/DHKj5/

HTML

<div id="topdiv"> 
    <div class="middlediv"> 
     <div>A</div> 
     <div>B</div> 
     <div>C</div> 
    </div> 
</div> 

CSS

.topdiv > div:nth-child(n+2) { 
    font-weight:bold; 
    font-color:red; 
} 

ответ

7

Demo

#topdiv .middlediv > div:nth-child(2) { 
    font-weight:bold; 
    color:red; 
} 

Вы должны использовать # для идентификатора и . для класса

Просто объяснить n+2 подберет все братья и сестры следующих 2-го элемента. Также > выберет только ближайшие дочерние элементы селектора соответствия.

+1

Оно должно 'цвет: red', а не' Font- цвет: красный'. – Eric

1

Один из способов:

#topdiv > .middlediv div:nth-child(2) { 
color: olive; 
} 

http://jsfiddle.net/DHKj5/4/

.topdiv > div:nth-child(n+2)

не работает, потому что потомок дива вы пытаетесь стиль не дети, но вместо этого внуков из #topdiv и вы также использовал . на корневом div вместо # (который предназначен для таргетинга на ID элементов)

Подробнее: http://www.w3.org/TR/css3-selectors/#nth-child-pseudo

2

Вы выбираете идентификаторы через # и классы с помощью .. С nth-child() вы можете просто передать индекс (с нуля) для него, чтобы выбрать элемент, вам нужно, в вашем случае 2

#topdiv .middlediv > div:nth-child(2) { 
    font-weight:bold; 
    color:red; 
} 

jsFiddle example

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