Существует разница.
>
является ребенком селектора, который выбирает только прямые /непосредственные элементов, где в качестве #a b i
будет выбрать дочерние элементы на любую глубине внутри указанного родителя.
Для разметки:
<div id="a">
<b><i>text</i></b>
</div>
<div id="b">
<b><i>text</i></b>
</div>
Оба должны работать, но по-прежнему селектор ребенка является более подходящим в данной ситуации. Рассмотрим это:
<div id="a">
<b><i>text</i></b>
</div>
<div id="b">
<b><i>text</i></b>
<b><i>text<div><span><i>text</i></span>></div></i></b>
</div>
В приведенном выше случае, хотя, селектор ребенок не будет применяться на <i>
внутри элемента диапазона в <div><span><i>text</i></span>></div>
, который не является прямым потомком <b>
элемента.
Дополнительная информация:
CSS Child Selectors
опечатка в 3-м слове;) разница –
@Gaby: Спасибо за это :) – Sarfraz