>
является дочерним комбинатором , иногда ошибочно называемым прямым потомком combinator.1
Это означает, что селектор div > p.some_class
выбирает только параграфы .some_class
, которые вложенные непосредственно внутри div
, а не любые абзацы, вложенные дальше внутри.
Иллюстрация:
Some text here
More text here
Что выбрано, а что нет:
p.some_class
расположен непосредственно внутри div
, поэтому между обоими элементами устанавливается родительско-дочернее отношение. p.some_class
содержится в blockquote
в пределах div
, а не самой div
. Хотя это p.some_class
является потомком div
, это не ребенок; это внук. Следовательно, в то время как div > p.some_class
не будет соответствовать этому элементу, div p.some_class
будет использовать вместо комбинатор потомков . 1 Многие люди идут дальше называть его «прямым ребенком» или «непосредственным ребенком», но это совершенно необязательно (и невероятно раздражает меня), потому что в любом случае дочерний элемент является по определению , поэтому они означают то же самое. Нет такой вещи, как «косвенный ребенок».