我想知道如果为浏览器支持的属性提供 CSS 样式,但样式本身不受支持,会发生什么情况。
以 IE8 为例;
background: url(../path/to/img.png);
background: rgba(0,0,0,0.8);
IE8 是否会因为不支持 CSS3 颜色而直接忽略第二种样式?
谢谢:)。
最佳答案
IE8 是否会因为不支持 CSS3 颜色而直接忽略第二种样式?
答案是是,它将完全忽略该值,因此不会渲染任何颜色,通常的做法是使用带有十六进制值的回退
.class_name {
background: #000;
background: rgba(0,0,0,.5);
}
所以,当你写 background
时两次,它是完全有效的,理解的浏览器 rgba()
将呈现不透明的背景,但浏览器不理解rgba()
将使用#000
.
不过,有多种解决方法,例如,您可以使用 :before
或:after
,与 filter
具有负值的属性 z-index
,可以用作不透明背景,或者您可以使用仅适用于 IE8 的普通 1x1 px 不透明 png 图像。
例如
background: url("IMAGE_URL_HERE")\9; /* Targets IE8 and below */
关于css - 当浏览器不支持 CSS 样式但属性支持时会发生什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23216777/