Потомки
Допустим, у нас есть следующий HTML:
<div><p><span>Текст сообщения</span></p></div>
В этом примере
<p> является "сыном" (прямым потомком) <div>, а <span> -- "внуком" <div>. Мы можем сделать текст элемента <span> красным, используя следующее правило CSS:div span {color: red;}Это означает, что содержимое любого элемента
<span>, расположенного внутри элемента <div> будет красным. Этот <span> может быть прямым потомком ("сыном"), или непрямым потомком ("внуком", "правнуком" и т.д.) элемента <div>.Если мы используем следующее правило CSS:
div>span {color: red;}Текст внутри
<span> не будет красным. Так как это правило озачает: <span>, являющийся прямым потомком <div>. А в нашем примере <span> является "внуком" <div>.Соседи
Теперь IE7 понимает еще и "соседские" селекторы.
blockquote+p {margin-top: 0;}Это CSS правило означает, что параграф, следующий сразу за цитатой, не имеет верхнего отступа.
Еще один хороший пример использования соседского селектора можно применить к горизонтальным спискам.
li+li {border-left: 1px solid black;}Это правило означает, что каждый
<li>(элемент списка), следующий за другим <li> (т.е. все, кроме первого) будет иметь левый бордюр.Псевдо-класс First-child
Если вам нужно выделить первый элемент (первого потомка) родительского элемента, используйте псевдокласс
first-child. Например, чтобы первый параграф внутри некой области с id="content" имел нулевой верхний отступ, используйте правило CSS:#content p:first-child {margin-top: 0;}Источник:


2 Комментариев :
Отлично! Я очень рад этому! Хотя в других источниках указывалось, что IE не поддерживает ни дочерние ни соседние селекторы.
Я использую для тестирования каким-то чудом еще массово не вымерший IE6. Он точно не понимает ни прямого наследования, ни «соседства». Он вообще дохрена чего не понимает.
Отправить комментарий
Жги!