何时“a”标签不会inheritance父标签的颜色属性?

这是我的代码:CSS的一部分

.blue { color:#6E99E1; font-size:9px; } 

标记部分

 <span class="blue">::<a href="/equipment_new.php">CLICK HERE</a>:: to view our New Equipment inventory. <br /><br /></span> 

我不知何故触发了一些阻止“a”标签现在inheritance父标签的颜色(这里是“span”)。

默认情况下,如果存在href属性,则锚定标记不会inheritance颜色等属性。

看看这两个页面之间的区别(我不知道如何让它显示在post上):

 <span style=color:green><a href="t">test</a></span> <span style=color:green><a>test</a></span> 

以下链接是对W3C:

http://www.w3.org/TR/html401/struct/links.html#h-12.2

用户代理通常以这样的方式呈现链接,使得它们对于用户而言变得明显(下划线,反转video等)。 确切的呈现取决于用户代理。 渲染可能根据用户是否已经访问链接而不同。

…..

通常情况下,当A仅定义一个锚点时,A的内容不会以任何特殊的方式呈现。

只是其他答复的补充,如果你希望你的<a>标签inheritance父母的颜色,你可以使用

 a {color: inherit; } 

我打算把这个post作为一个评论发表,但是这个问题变得有点长了…所以这是对这个问题的回答,也是对Kevin的回答及其评论的答复 。

锚链接标签确实inheritance了颜色,链接与否。 他们不在实践中的唯一原因是因为他们已经在浏览器的默认样式表中设置了颜色。 链接的下划线也是一样(我猜,你没有注意到,因为你真的想要它,或者已经自己改变了它)。

在Firefox中,如果您切换到“显示用户代理CSS”,您可以在Firebug中看到这一点(或者您可以直接看看Firefox的内部样式表 ,您也可以在Webkit的Web Inspector和Opera的Dragonfly中看到浏览器的默认值,不要以为你可以在IE浏览器。

我不知道任何网站有一个概述所有浏览器的默认值。 CSS2的“信息性” HTML4样式表以及YUI重置样式表是一个很好的起点,但是他们都没有提到任何(链接)颜色(HTML4样式表没有提到下划线)。

要找出通常inheritance的属性,可以使用CSS2引用属性索引表 (请参阅“inheritance?”一栏)。 SitePoint也在其CSS参考中提到它。

所以,如果你想确保你的链接从它的父代inheritance它的颜色,而不是从浏览器的默认样式表中,你最好做这样的事情:

 .blue a:link { color: inherit; } 

你可以分别为不同的伪类设置它(如:visited:hover:active ),或者完全为a标签设置。

但是, IE6和IE7不支持inherit关键字 ,所以如果您也想支持它们,则必须明确设置颜色。

我认为a默认情况下不会inheritance颜色。 (当然,它一直在我的网站上这样工作)。 为什么不改变

 .blue { color:#6E99E1; font-size:9px; } 

 .blue, .blue a{ color:#6E99E1; font-size:9px; } 

Firebug会向你显示哪些样式规则适用于哪些元素。 这是完美的。

(一个非CSS的可能性:你的<body>标签有link/alink/vlink属性吗?)

编辑 :杜,愚蠢的我,其他人有权利 – <a href>不inheritance颜色。 但萤火虫仍然是这类问题的好工具(即使我不是)

除了萤火虫(应该是您的第一个停靠点)之外, IE开发者工具栏也会告诉您一个给定的风格来自哪里,以防万一IE – 震惊,恐怖 – 应该是不同的。

您可能会看到a:visited着色。 尝试这个:

 .blue, .blue:link, .blue:visited { color:#6E99E1; font-size:9px; } 

您需要明确设置链接的颜色来覆盖默认的蓝色。