Расширенные CSS селекторы
Расширенные CSS-селекторы
Х+Y
1 ul + p { color: red; } Выделяет последующий элемент. Он будет выбирать только элемент типа Y, который идет сразу после элемента Х. В примере текст первого абзаца после каждого ul будет красного цвета.
Х>Y
1 div#container > ul { border: 1px solid black; } Разница между стандартными Х Y и X > Y состоит в том, что рассматриваемый CSS-селектор будет выбирать только непосредственные дочерние элементы. Например, рассмотрим следующий код.
<div id="container">
<ul>
<li> Элемент списка
<ul>
<li> Дочерний элемент</li>
</ul>
</li>
<li> Элемент списка </li>
<li> Элемент списка </li>
<li> Элемент списка </li>
</ul>
</div>
CSS-селектор #container > ul выберет только ul-ы, которые являются непосредственными дочерними элементами div с id =container . Он не выберет, например, ul-ы, являющиеся дочерними элементами первых li .
Х ~ Y
1 ul ~ p { color: red; } Этот CSS-селектор очень похож на X + Y, однако, является менее строгим. При использовании ul + p будет выбрать только первый элемент, идущий за Х. В данном случае будут выбраны все элементы p, идущие за ul.
ДЗ. Есть три цветных блока и серый блок. При наведении на цветной блок, серый окрашивается в этот же цвет.