2010-03-26 59 views
1
.box_content ::selection { 
background:#CCCC33; /* Safari */ 
} 
.box_content ::-moz-selection { 
background:#CCCC33; /* Firefox */ 
} 

任何人都知道我是否可以結合這些?如何結合這個CSS?

.box_content ::selection .box_content ::-moz-selection { 
background:#CCCC33; 
} 

也許喜歡:

.box_content ::selection, .box_content ::-moz-selection { 
background:#CCCC33; 
} 
+0

你已經在你的問題中寫了正確的代碼,但你從來沒有真正嘗試過嗎? – nickf 2010-03-26 03:09:34

+2

得到一些睡眠。 – SLaks 2010-03-26 03:10:53

+0

@Joe - 請不要留下問題,回去接受答案,這會讓您的問題更加吸引可能的回答者。 – 2010-03-28 11:33:09

回答

1

第二個是正確的。您可以使用逗號分隔CSS選擇規則。

所以給出:

selector-rule1, selector-rule2 { 
    style-x; 
    style-y; 
} 

這將適用style-x & style-y以任何要麼selector-rule1selector-rule2匹配。


只是爲了解釋爲什麼你的第一個例子是行不通的,因爲它意味着spaces祖先後裔關係,所以如果你有:

selector-rule4 selector-rule4 { 
    style-z; 
} 

然後style-z將被應用到任何匹配selector-rule4如果它也是與selector-rule3匹配的東西的祖先。

More info on selectors here

0

你的第二個例子應該能正常運行。

0

到組的選擇:

.box_content ::selection, .box_content ::-moz-selection { 
    background:#CCCC33; 
} 
0

你的第二個例子不能工作,因爲瀏覽器has to ignore完整的規則:

當用戶代理不能解析 選擇(即它不是有效的CSS 2.1),它必須忽略選擇器和下面的聲明塊(如果有 any)。

Opera和Webkit無法解析Gecko專有選擇器,而Gecko無法解析常規::選擇。所以這個規則永遠不會被應用。