Css 是否可以在IE6/7/8中应用RGBA边界?
我的CSS如下所示:Css 是否可以在IE6/7/8中应用RGBA边界?,css,Css,我的CSS如下所示: #bbb { border: solid rgba(0, 0, 0, .45) 200px; height: 1500px; width: 960px; } 我确实需要使边框透明,但它在IE6/7/8上不起作用,我该如何处理它?你可以这样做,它基本上是渲染一个“borderdiv”,在“contentdiv”周围有一个透明的背景。“边框宽度”是通过更改div.border中的padding值来设置的,颜色/透明度来自背景图像值,该值当前链接到一个50%透明黑色
#bbb {
border: solid rgba(0, 0, 0, .45) 200px;
height: 1500px;
width: 960px;
}
我确实需要使边框透明,但它在IE6/7/8上不起作用,我该如何处理它?你可以这样做,它基本上是渲染一个“border
div
”,在“contentdiv
”周围有一个透明的背景。“边框宽度”是通过更改div.border
中的padding
值来设置的,颜色/透明度来自背景图像
值,该值当前链接到一个50%透明黑色
像素大小的图像
HTML
<div class="border">
<div class="content"></div>
</div>
<div class="component">
<div class="background"></div>
<div class="content">..Content..</div>
</div>
这里有一个在IE6/7/8中应该可以使用的方法
这是指向的链接,在旧浏览器中无法正确加载。不使用图像的替代方法是: HTML
<div class="border">
<div class="content"></div>
</div>
<div class="component">
<div class="background"></div>
<div class="content">..Content..</div>
</div>
可以根据需要缩放任意大的边界。这一个使用定位,您也可以使用填充/边距
您不能在IE8及更高版本中使用RGBA,据我所知,它也没有polyfill 正如其他人已经说过的,您可以使用背景,但不需要使用图像。您也不能使用
Opactiy
(或filter:alpha(opacity)
),因为这也会使子对象透明
相反,您可以以ARGB格式为父元素指定单一颜色过滤器渐变
.parent {
background: transparent;
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#7FFFFFFF,endColorstr=#7FFFFFFF)"; /* IE8 */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#7FFFFFFF,endColorstr=#7FFFFFFF); /* IE6 & 7 */
zoom: 1;
}
这相当于background:rgba(255,255,255,5)代码>在现代浏览器中
要获得更详细的解释和rgba到argb的转换,请参阅。我很确定这是一个XY问题,为什么需要这么大的边框?IE6和IE7在透明PNG图像@FezVrasta上有问题-谢谢,我已经修复了帖子并摆弄了一个GIF图像。