Подтвердить что ты не робот

Что означает ">" в ​​CSS?

Возможный дубликат:
Что означает " > " в правилах CSS?

Что означает символ > в CSS? Я заметил это в своей теме блога Wordpress и хочу знать, что он делает.

#access li:hover > a,
#access ul ul :hover > a,
#access a:focus {
    background: #efefef;
}
#access li:hover > a,
#access a:focus {
    background: #f9f9f9; /* Show a solid color for older browsers */
    background: -moz-linear-gradient(#f9f9f9, #e5e5e5);
    background: -o-linear-gradient(#f9f9f9, #e5e5e5);
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#f9f9f9), to(#e5e5e5)); /* Older webkit syntax */
    background: -webkit-linear-gradient(#f9f9f9, #e5e5e5);
    color: #373737;
}
#access ul li:hover > ul {
    display: block;
}
4b9b3361

Ответ 1

это означает, что будут нацелены только "первые вложенные" элементы ( "дочерние" элементы), например

   <div id="a">
       <div id="b">
         <div id="c">
       </div>
      </div>
    </div>

если вы пишете

#a div{
 background: red;
}

то и #b и #c будут красными, но если вы используете > как

#a > div{
 background: red;
}

тогда только #b будет красным, #c не будет.

Ответ 2

Это дочерний селектор (также называемый детским комбинатором). Вы можете узнать больше о селекторах на веб-сайте консорциума World Wide Web (W3C), где вы можете прочитать запись CSS2 в дочернем селекторе или вы можете перейти прямо к записи CSS3 в селекторе дочерних элементов.

Кроме того, здесь отличная цитата из другого SO-вопроса о CSS Child vs Descendant selectors:

Подумайте, что означают слова "ребенок" и "потомок" на английском языке:

  • Моя дочь и мой ребенок, и мой потомок

  • Моя внучка не мой ребенок, но она мой потомок.

Ответ 3

li > a соответствует любому элементу, являющемуся дочерним элементом li. См. страницу W3C CSS для любых селекторов.