2010-11-28 338 views

回答

9

color属性不属于属性的字体或文本类别。它实际上生活在它自己的规范部分,包括CSS1CSS2.1。甚至有一整个专用于颜色的CSS3 module

每个规范指的是color作为定义前景颜色,然后将其描述为是指该元素的文本内容的颜色。但由于foreground-color将不必要地冗长,因此“属性名称”中不再包含“前景”一词。 background-color不言而喻,与color区别。

也就是说,尽管color属性通常会影响元素的文本,但如果您还指定边框但未指定border-color,则边框将采用与文本相同的颜色。这是完全正常的,因为它规定in the CSS box model specification

如果不带边框属性指定一个元素的边框颜色,用户代理必须使用元素的“颜色”属性的值作为边框颜色的计算值。

<div style="color: red; border: 1px dotted"> 
    This block has red text and a red 1-pixel dotted border. 
    Notice only the width and style are specified in the style attribute. 
</div> 

字体和文本特性之间的差的Martin Algesten in his answer has a nice summary

2

字体字体的变体,即Arial是类型脸,Arial Bold是字体。你没有设置字体颜色(我从来没有听说过具有特定颜色的字体)。你正在设置文本的颜色。

我想这个想法应该是,你可以有一个受color影响的其他元素,而不仅仅是文本。与text-decoration: underline相比,显然只会影响文本,但如果我们想象我们可以在内嵌插入随机形状,则它也会受到color的影响。