CSS'你没有颜色设置[...]'警告

时间:2012-08-17 09:21:27

标签: css colors warnings w3c

这个警告应该是直截了当的,但我无法弄清楚出了什么问题。

来自W3C验证器的确切警告消息为:You have no color set (or color is set to transparent) but you have set a background-color. Make sure that cascading of colors keeps the text reasonably legible.

这是发生警告的css:

body {
    background-image: url('./img/bg1.jpg');
    background-position: center top;
    background-repeat: no-repeat;
    color: #ffffff;
    background-color: #007e29; /* <-- This is the line where the warning occurs */
}

根据W3C Docu和一些谷歌搜索,很明显,对于每个background-color,此元素必须有color属性。但这就是我在做什么? color属性设置为白色,background-color设置为深绿色。

那么上面的CSS有什么问题? 我相信我在这里遗漏了一些东西...提前致谢!

1 个答案:

答案 0 :(得分:3)

发布的CSS代码不会引起此类警告。如果没有一个完整的例子,就无法分析为什么CSS Validator似乎警告错误的行。

无论如何,当人们对这个警告感到困惑时,原因是他们已经设定了body的背景和内容颜色,以及内部元素的其中一个属性。人们通常认为body中的任何元素都继承了body的颜色,但这并不一定会在其他样式表参与时发生。这就是CSS Validator警告这种情况的原因。这只是一个潜在的问题,不会经常出现,但仍然存在风险。