2012-01-19 71 views
77

我使用不同颜色的文字创建导航菜单(href链接)。我希望颜色在任何状态下都不会改变(悬停,访问等)。从超链接中删除所有样式/格式

我知道如何设置不同状态的颜色,但是我想知道只保留文本颜色(以及任何其他样式/格式)的代码。

有什么建议吗?

回答

132

你可以简单地定义为链接的风格,这将覆盖a:hovera:visited等:

a { 
    color: blue; 
    text-decoration: none; /* no underline */ 
} 

您还可以,如果你想使用父样式属性,而不是使用inherit值:

body { 
    color: blue; 
} 
a { 
    color: inherit; /* blue colors for links too */ 
    text-decoration: inherit; /* no underline */ 
} 
+3

重要的部分是'inherit'关键字。它不幸的是没有100%的支持。 – david 2012-01-19 00:59:36

+2

'initial'在您希望将css重置为默认样式时也很有用。这是很好的解释这里[链接](http://stackoverflow.com/questions/8228980/reset-css-display-property-to-default-value) – SiteHopper 2013-08-29 16:36:43

+0

非常感谢你'inherit'! – parsecer 2016-10-16 01:09:07

-1

如果你的状态a.redLink{color:red;}然后保持这个悬停和这种添加a.redLink:hover{color:red;}这将确保没有其他的悬停状态将改变你的链接的颜色

1

你可以只使用一个a选择在样式表中定义的所有锚点/超链接的状态。例如:

a { 
    color: blue; 
} 

会覆盖所有链接样式并使所有状态都变为蓝色。

+0

这不是他问的。重新阅读这个问题。他已经知道这一点。 – david 2012-01-19 01:02:00

2

正如克里斯在我之前所说,只有a应该重写。例如:

a { color:red; } 
a:hover { color:blue; } 
.nav a { color:green; } 

在这种情况下,.nav a将永远是绿色的,则:悬停并不适用于它。

如果还有其他规则影响它,你可以使用!important,但你不应该。陷入这是一个坏习惯。

.nav a { color:green !important; } /*I'm a bad person and shouldn't use !important */ 

然后,它永远是绿色的,与任何其他规则无关。

+0

这不是他问的。重新阅读这个问题。他已经知道这一点。 – david 2012-01-19 01:01:49

+0

@david我重新阅读,很确定这就是他问的。这段代码将允许他为'a'设置一个样式,这将防止':hover'(或':visited'等)发生任何变化。怎么样,而不是作为一个家伙和垃圾所有三个答案,你建议一个实际的解决方案? – SpoonNZ 2012-01-19 19:44:28

+0

感谢您的帮助。但是如果链接是这样的话。 2种颜色的字,但它只是1个链接: 独特(粉色)销售(黑色) 而且他们应该保持在任何状态下的颜色。 我用这种方式内联编码... uniquesales 但必须有一个更清洁。 (那里有很多这样的代码链接) 有什么建议吗? – SiteHopper 2012-03-07 19:31:34