2012-02-28 103 views
24

可能重複:
What does 「>」 mean in CSS rules?「>」在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; 
} 

回答

40

這意味着,只有 「第一嵌套」 的元素將有針對性( 「子」 元素),例如

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

,如果你寫

#a div{ 
background: red; 
} 

那麼這兩個# b和#c將是紅色的,但如果您使用>像

#a > div{ 
background: red; 
} 

然後只有#b會紅色,#c不會。

+0

我認爲如果您在'id = a'' div'下添加'id = d'的另一個'div',*視覺*顯示所有'child'元素將被選中,您的答案會更有幫助。 :) – 2016-10-03 23:17:22

12

這是一個子選擇器(也稱爲子組合器)。您可以在萬維網聯盟(W3C)的網站上找到有關選擇器的更多信息,您可以在其中閱讀CSS2 entry on the child selector 或者直接跳至CSS3 entry on the child selector

而且,這裏是從另一個偉大的報價SO質疑約CSS Child vs Descendant selectors

試想什麼樣的話「孩子」和「後裔」的英文意思是:

  • 我的女兒我的孩子和我的後裔

  • 我的孫女不是我的孩子,但她是我的後裔。

+0

CSS2選擇器規範已被CSS3規範所取代,因爲它現在是推薦標準(也有一個很酷的URL):http://www.w3.org/TR/selectors – BoltClock 2012-02-28 18:44:56

+0

@BoltClock好點。 – 2012-02-28 19:23:37

3

li > a匹配li的一個子元素。對於任何選擇器,請參閱請參閱W3C CSS page