2012-04-08 118 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; 
}