Css 过滤器:progid:DXImageTransform.Microsoft.gradient在ie7中不起作用

Css 过滤器:progid:DXImageTransform.Microsoft.gradient在ie7中不起作用,css,internet-explorer,internet-explorer-7,Css,Internet Explorer,Internet Explorer 7,我想对我的div应用渐变背景色 对于IE,我使用了该属性: filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fad59f', endColorstr='#fa9907') 它在IE9和IE8中工作。但不是在IE7工作 在IE中我应该做些什么 下面是一个JSFIDLE:您没有指定梯度类型: background: #f0f0f0; /* Old browsers */ background: -moz-line

我想对我的
div
应用渐变背景色

对于IE,我使用了该属性:

filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fad59f', endColorstr='#fa9907')
它在IE9和IE8中工作。但不是在IE7工作

在IE中我应该做些什么


下面是一个JSFIDLE:

您没有指定
梯度类型

background: #f0f0f0; /* Old browsers */
background: -moz-linear-gradient(top, #ffffff 0%, #eeeeee 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#ffffff), color-stop(100%,#eeeeee)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #ffffff 0%,#eeeeee 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #ffffff 0%,#eeeeee 100%); /* Opera11.10+ */
background: -ms-linear-gradient(top, #ffffff 0%,#eeeeee 100%); /* IE10+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 ); /* IE6-9 */
background: linear-gradient(top, #ffffff 0%,#eeeeee 100%); /* W3C */
来源:

这应该可以:

background: -moz-linear-gradient(center top , #fad59f, #fa9907) repeat scroll 0 0 transparent;
 /* For WebKit (Safari, Google Chrome etc) */
background: -webkit-gradient(linear, left top, left bottom, from(#fad59f), to(#fa9907));
/* For Mozilla/Gecko (Firefox etc) */
background: -moz-linear-gradient(top, #fad59f, #fa9907);
/* For Internet Explorer 5.5 - 7 */
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#fad59f, endColorstr=#fa9907);
/* For Internet Explorer 8 */
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#fad59f, endColorstr=#fa9907)";
否则,使用以下链接生成并获取代码


在评论中看到你的胡闹,这个问题很容易解决。您只需添加
overflow:auto
或为
div
设置特定高度即可。实例:


在测试IE7/8/9时,我在尝试使用此代码段时收到了一条
ActiveX
警告:

filter:progid:DXImageTransform.Microsoft.gradient

移除此按钮后,警告消失。我知道这不是答案,但我认为值得注意。

zoom:1也会这样做,但对元素没有“任何”影响。(经过几个小时的咒骂,我刚刚解决了同样的问题。)为了解释为什么会这样做——将
溢出:auto
,强制在元素上使用
-ms filter
而不是
filter
,并将
progid:DXImageTransform…
用引号括起来作为字符串。
filter:progid:DXImageTransform.Microsoft.gradient