什么是“>” CSS中的意思?

时间:2012-02-28 18:17:51

标签: css css-selectors

  

可能重复:
  What does “>” mean in CSS rules?

>符号在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;
}

3 个答案:

答案 0 :(得分:41)

这意味着只会定位“第一个嵌套”元素(“子”元素),例如

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

如果你写

#a div{
 background: red;
}

然后#b和#c都是红色的,但是如果你使用&gt;像

#a > div{
 background: red;
}

然后只有#b会变红,#c则不会。

答案 1 :(得分:12)

这是一个子选择器(也称为子组合子)。您可以在万维网联盟(W3C)的网站上找到有关选择器的更多信息,您可以在其中阅读CSS2 entry on the child selector 或者你可以直接跳到CSS3 entry on the child selector

此外,这是关于CSS Child vs Descendant selectors的另一个SO问题的一个很好的引用:

  

想想“孩子”和“后代”这个词在英语中的含义:

     
      
  • 我的女儿既是我的孩子又是我的后代

  •   
  • 我的孙女不是我的孩子,但她是我的后代。

  •   

答案 2 :(得分:3)

li > a匹配任何属于li子元素的元素。 有关任何选择器,请参阅W3C CSS page