我正在使用<meta http-equiv="X-UA-Compatible" content="IE=8">
将IE9渲染为IE8。这解决了很多我的问题,但是因为IE8不支持box-shadow
我被迫使用filter: progid:DXImageTransform.Microsoft.Shadow(color='#333333', Direction=145, Strength=5);
来获得与我的阴影类似的效果。现在,IE9确实支持box-shadow
但是我无法让IE9使用box-shadow
而不是filter
。
有谁知道如何让IE9渲染阴影?
答案 0 :(得分:1)
如果IE9处于IE8模式,则无法使IE9使用其原生box-shadow
。
你可以:
box-shadow
。答案 1 :(得分:0)
为什么要强制它呈现为IE8然后期望它呈现为IE9? :) IE8没有盒子阴影支持,所以IE9在渲染为IE8时尽职尽责地禁用它。
如果你想让IE9渲染盒子阴影,你必须将它设置回IE9或EDGE渲染。如果您被迫保持x-ua兼容,那么您将不得不使用过滤器。
注意IE8的语法不同......
/* For IE 8 */
-ms-filter: "progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#000000')";
/* For IE 5.5 - 7 */
filter: progid:DXImageTransform.Microsoft.Shadow(Strength=4, Direction=135, Color='#000000');
(从http://robertnyman.com/2010/03/16/drop-shadow-with-css-for-all-web-browsers/获取的例子)
因为理想情况下这些非常讨厌我建议你在带有条件评论的IE浏览器样式表中隔离它们。