有人可以告诉我以下CSS是否有效?
.class {
background-color:none;
}
答案 0 :(得分:460)
您可能需要transparent
,因为none
不是有效的background-color
值。
CSS 2.1 spec声明background-color
属性的以下内容:
Value: <color> | transparent | inherit
<color>
可以是关键字或颜色的数字表示。 Valid color
keywords是:
浅绿色,黑色,蓝色,紫红色,灰色,绿色,石灰,栗色,海军蓝,橄榄色, 橙色,紫色,红色,银色,蓝绿色,白色和黄色
transparent
和inherit
本身就是有效的关键字,但none
不是。
答案 1 :(得分:149)
不,请使用transparent
代替none
。如果您要将transparent
更改为none
它将无效,请参阅此示例中的工作示例here
像.class { background-color:transparent; }
<小时/> .class 的位置就是透明类的名称。
答案 2 :(得分:56)
答案是否定的。
.class {
background-color: none; /* do not do this */
}
.class {
background-color: transparent;
}
background-color: transparent
完成了与background-color: none
想要做的事情相同的事情。
答案 3 :(得分:6)
.class {
background-color:none;
}
这不是有效的财产。 W3C验证器将显示以下错误:
在CSS规范的制定过程中,值错误:background-color none不是背景颜色值:无
transparent
可能被选为更好的术语,而不是0
或none
值。
答案 4 :(得分:4)
CSS Level 3指定unset
属性值。来自MDN:
未设置的CSS关键字是初始和继承的组合 关键字。像这两个其他CSS范围的关键字一样,它可以应用于 任何CSS属性,包括CSS简写全部。此关键字重置 如果属性继承自其父级或属性,则该属性为其继承值 如果没有它的初始值。换句话说,它的行为就像 在第一种情况下继承关键字,并像在初始关键字中一样 第二种情况。
不幸的是,目前在所有浏览器中都不支持此值,包括IE,Safari和Opera。我建议暂时使用transparent
。
答案 5 :(得分:1)
写下这个:
.class {
background-color:transparent;
}
答案 6 :(得分:0)
因此,我想解释一下我必须使用此解决方案的情况。基本上,我想撤消另一个CSS设置的background-color属性。预期的最终结果是使它看起来好像原始CSS从未应用background-color属性。设定background-color:transparent;
作出有效的。