2012-04-08 119 views
4

HTML:懸停不工作

<table width="100%"> 
<tr> 
    <td width="90%"></td> 
    <td><a href="#" id="logout"><strong>Logout</strong></a></td> 
</tr> 
</table> 

CSS

@charset "utf-8"; 
/* CSS Document */ 

#logout { 
color:#BBB; 
} 

a:hover { 
color:#FFF; 
} 

雖然註銷的顏色似乎是什麼在給定的CSS,顏色不會改變的時候我把我的鼠標在鏈接上(白色)。是什麼原因 ?

我必須告訴有傾向於改變鏈接的顏色,當鼠標放在他們,他們做工精細等css文件。

+0

[佈局表(http://www.hotdesign.com/seybold /)? [鏈接到註銷](http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.1)?噢親愛的。 – Quentin 2012-04-08 18:19:26

+1

@Quentin:註銷鏈接沒什麼問題,恕我直言。有時使用表格而不是「純粹」無表格CSS來佈局,實際上可以讓你無盡的心痛。在我的經驗中。 – Stefan 2012-04-08 18:22:26

回答

16

ID選擇(#logout)更具體的再一個類型選擇(a)加上一個僞類(:hover),所以你的第一規則集將始終win the cascade

使用#logout:hover來代替。

+0

雖然問題解決了,但我還沒有明白你的答案。請你清楚解釋 – saplingPro 2012-04-08 18:22:01

+0

請點擊鏈接。 – Quentin 2012-04-08 18:24:41

1

簡化:

您有適用於這種定位的兩個CSS規則。

兩個規則改變顏色。

只有一個規則可以適用;只能選擇一種顏色。

該瀏覽器具有基於ID(#logout)和基於元素類型(<a>)一個規則的規則之間作出選擇。

基於ID的規則贏在這種情況下。指定ID比指定類型的所有元素(錨點)更具體。

-1

你必須遵循一個層次序列:

鏈接,懸停,訪問

例如:

a:link 
{ 
text-decoration:none; 
color:#008b45; 
} 

a:hover 
{ 
margin-bottom: 3px solid #ff7400; 
    background:white; 
} 

a:visited 
{ 
color:#ee9a00; 
}