0

我的 CSS 为整个网站的链接提供了以下代码:

#mainpanecontent A:link {
    FONT-WEIGHT: bold; COLOR: #6a0a0a; TEXT-DECORATION: none
}

我想使用下面的代码将也是链接的标题更改为不同的颜色,但它不强制执行。我的代码在使用“mainpanecontent”的 div 中:

标头代码

.contact
 {
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 14px;
    font-weight: bold;
padding-left: 50px;
background-position: 25px 14px;
padding-top: 13px;


}

.contact a:link, .contact a:visited
{

color: #1F507F;

}


.contact a:hover
{

color: #1F507F;


}
.contact a:active
{

color: #1F507F;


}
4

3 回答 3

4

#mainpanecontent A:link比您的任何 s 具有更高的特异性.contact a:something。解决这个问题的最好方法可能是给你的标题一个 ID 并使用它。如果你不能,而且只有 in #maincontent#maincontent就足够了,即使它并不完全合适。(视情况而定。)

#mainpanecontent .contact a:link {
    color: #1f507f;
}

此外,只需删除:link,特别是如果您要为所有这些指定相同的内容。(那里唯一的考虑因素<a name>是, ,这些天没有使用。)

于 2013-11-07T23:46:05.113 回答
0

CSS 有一个优先级系统来处理什么得到什么标签 :: Give this a read

这是对您的代码的简单重写,应该可以工作:)

列表中较高的所有内容都应覆盖相同类型列表中较低的内容

.contact a:active
{

color: #1F507F;


}
.contact a:hover
{

color: #1F507F;


}

.contact a:link, .contact a:visited
{

color: #1F507F;

}


 .contact
 {
    font-family: Tahoma, Geneva, sans-serif;
    font-size: 14px;
    font-weight: bold;
padding-left: 50px;
background-position: 25px 14px;
padding-top: 13px;


}
于 2013-11-07T23:47:17.433 回答
0

由于之前的规则非常明确,CSS 规则有时不会被强制执行,在您上面列出的规则中,它引用了一个 ID,这比一个类更明确。

当然,另一个问题可能是您的“覆盖”是在其他规则之前定义的,因此它们被覆盖。

在第一种情况下,您可以使用!important强制覆盖规则。

例如

.contact
{
  font-family: Tahoma, Geneva, sans-serif;
  font-size: 14px;
  font-weight: bold;
  padding-left: 50px;
  background-position: 25px 14px;
  padding-top: 13px;
}

.contact a {
  color: #1F507F !important;
}

注意我删除了其他规则,因为您只是在每种情况下将链接颜色设置为相同的颜色,因此无需使用相同的常量定义伪类等:hover:active

于 2013-11-07T23:50:25.547 回答