【发布时间】:2012-07-04 09:48:42
【问题描述】:
我试图在 IE8 中模拟将 RGBA 背景和框阴影应用于 div 的效果。如果我设置一个不透明的背景,我可以使用 Microsoft 'Shadow' 过滤器来成功实现 box-shadow 效果。背景设置为“透明”,我可以通过应用“渐变”滤镜获得 RGBA 背景。但是,如果我尝试像这样组合这两个过滤器,
div#translucentBG {
zoom : 1;
background : transparent;
filter:
progid:DXImageTransform.Microsoft.Gradient(StartColorStr=#80464646, EndColorStr=#80464646),
progid:DXImageTransform.Microsoft.Shadow(Color=#ffffff, Strength=5, Direction=0),
progid:DXImageTransform.Microsoft.Shadow(Color=#ffffff, Strength=5, Direction=90),
progid:DXImageTransform.Microsoft.Shadow(Color=#ffffff, Strength=5, Direction=180),
progid:DXImageTransform.Microsoft.Shadow(Color=#ffffff, Strength=5, Direction=270);
}
那么 div 将具有正确的框阴影,但背景为不透明 #464646。只需删除所有阴影过滤器,神奇地,div 再次变为半透明。这很令人沮丧。由于 IE 完美地分别渲染了这两种效果,我无法想象为什么在组合它们时会失败。我知道可能有可用的解决方法和替代方法,但我真正感兴趣的是为什么上述技术会失败。
【问题讨论】:
标签: css internet-explorer internet-explorer-8