2016-02-27 122 views
1

当您给出链接的颜色时,它也会自动将此颜色应用于悬停状态。这要求我每次要更改链接的颜色时都要指定悬停颜色。我想知道是否有方法可以更改链接颜色并保持原始悬停颜色?如何在更改链接颜色时保持原始悬停颜色?

+1

我现在找不到链接,但CSS规则的顺序很重要。在“a:visited”之后指定'a:hover'规则。你是这个意思吗? – Kenney

+1

假设有全局规则:链接为蓝色,悬停为红色。在某些div中,我希望链接具有绿色。一旦我将颜色更改为绿色,悬停颜色(红色)将被删除。我必须再次指定红色悬停颜色。我需要一种方法来避免这种重复的代码。我将添加示例 – Alvarez

+0

您希望为不同颜色的链接设置全局:悬停颜色? – Aziz

回答

1

您可以通过使默认的全球a:hover比彩色链接更具体。

请看下面的例子:

a { color: blue } 
 
a:hover { color: red; } 
 

 
a.color1 { color:green; } 
 
a.color2 { color:orange; } 
 
a.color3 { color:purple; }
<ul> 
 
    <li><a href="#">Default</a></li> 
 
    <li><a href="#" class="color1">Green Link</a></li> 
 
    <li><a href="#" class="color2">Orange Link</a></li> 
 
    <li><a href="#" class="color3">Purple Link</a></li> 
 
</ul>

悬停颜色不会是默认红色的,因为加入a.classname比更具体a

就可以解决这个由具有类没有a前缀,如下所示:

a { color: blue } 
 
a:hover { color: red; } 
 

 
.color1 { color:green; } 
 
.color2 { color:orange; } 
 
.color3 { color:purple; }
<ul> 
 
    <li><a href="#">Default</a></li> 
 
    <li><a href="#" class="color1">Green Link</a></li> 
 
    <li><a href="#" class="color2">Orange Link</a></li> 
 
    <li><a href="#" class="color3">Purple Link</a></li> 
 
</ul>

否则,你可以申请!importanta:hover颜色,像这样a:hover { color: red !important; }但是,不建议这样做,如果可能,应尽量避免。