Css IE9中的梯度:使用;过滤器:无“;不';行不通

Css IE9中的梯度:使用;过滤器:无“;不';行不通,css,internet-explorer,cross-browser,internet-explorer-9,Css,Internet Explorer,Cross Browser,Internet Explorer 9,我刚刚用这个函数生成了一个渐变 使用生成的规则,它对IE9不起作用,但我发现,我期望它在使用IE9条件时起作用,但它仍然不起作用 <html> <head> <style type="text/css"> div { background: rgb(208,228,247); /* Old browsers */ /* IE9 SVG, needs conditional override of 'filter' to 'none' */ backgroun

我刚刚用这个函数生成了一个渐变

使用生成的规则,它对IE9不起作用,但我发现,我期望它在使用IE9条件时起作用,但它仍然不起作用

<html>
<head>

<style type="text/css">
div {
background: rgb(208,228,247); /* Old browsers */
/* IE9 SVG, needs conditional override of 'filter' to 'none' */
background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2QwZTRmNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjUwJSIgc3RvcC1jb2xvcj0iIzBhNzdkNSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM4N2JjZWEiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
background: -moz-linear-gradient(top, rgba(208,228,247,1) 0%, rgba(10,119,213,1) 50%, rgba(135,188,234,1) 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(208,228,247,1)), color-stop(50%,rgba(10,119,213,1)), color-stop(100%,rgba(135,188,234,1))); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, rgba(208,228,247,1) 0%,rgba(10,119,213,1) 50%,rgba(135,188,234,1) 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, rgba(208,228,247,1) 0%,rgba(10,119,213,1) 50%,rgba(135,188,234,1) 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, rgba(208,228,247,1) 0%,rgba(10,119,213,1) 50%,rgba(135,188,234,1) 100%); /* IE10+ */
background: linear-gradient(top, rgba(208,228,247,1) 0%,rgba(10,119,213,1) 50%,rgba(135,188,234,1) 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d0e4f7', endColorstr='#87bcea',GradientType=0 ); /* IE6-8 */

}

</style>

<!--[if IE 9]>
  <style type="text/css">
    div {
       filter: none;
    }
  </style>
<![endif]-->

</head>
<body>


<div></div>

</body>
</html>

div{
背景:rgb(208228247);/*旧浏览器*/
/*IE9 SVG,需要将“过滤器”条件重写为“无”*/
背景:url(数据:数据:数据:图像/svg+xml;基本64,基本64,PD94BBWWWWWWBWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWBBWWWWWBWWWWWWWWBWWWWWWWWWWWWWWVVVVVVVVvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv2)2)2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 0IdxjsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+;
背景:-moz线性梯度(顶部,rgba(208228247,1)0%,rgba(10119213,1)50%,rgba(135188234,1)100%);/*FF3.6+*/
背景:-webkit渐变(线性,左上,左下,颜色停止(0%,rgba(208228247,1)),颜色停止(50%,rgba(10119213,1)),颜色停止(100%,rgba(135188234,1));/*铬,Safari4+*/
背景:-webkit线性梯度(顶部,rgba(208228247,1)0%,rgba(10119213,1)50%,rgba(135188234,1)100%);/*Chrome10+,Safari5.1+*/
背景:-o-线性梯度(顶部,rgba(208228247,1)0%,rgba(10119213,1)50%,rgba(135188234,1)100%);/*Opera 11.10+*/
背景:-ms线性梯度(顶部,rgba(208228247,1)0%,rgba(10119213,1)50%,rgba(135188234,1)100%);/*IE10+*/
背景:线性梯度(顶部,rgba(208228247,1)0%,rgba(10119213,1)50%,rgba(135188234,1)100%);/*W3C*/
过滤器:progid:DXImageTransform.Microsoft.gradient(startColorstr='#d0e4f7',endColorstr='#87bcea',GradientType=0);/*IE6-8*/
}
有什么帮助吗?

这对我很有用(http://www.w3schools.com/svg/svg_grad_linear.asp)

/*IE 9*/

.some_element {
background-image: url(
header('Content-type: image/svg+xml; charset=utf-8');
<?xml version="1.0"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.0" preserveAspectRatio="none" width="100%" height="100%">
    <defs>
        <linearGradient id="linear-gradient" x1="0%" y1="0%" x2="0%" y2="100%" spreadMethod="pad">
            <stop offset="0%" stop-color="#212121" stop-opacity="1"/>
            <stop offset="100%" stop-color="#cccccc" stop-opacity="1"/>
        </linearGradient>
    </defs>
    <rect width="100%" height="100%" style="fill: url(#linear-gradient);"/>
</svg>
);
}
。一些元素{
背景图片:url(
标题('Content-type:image/svg+xml;charset=utf-8');
);
}


您可以相应地将值更新为所需的值。我没有使用过滤器:无CSS。

这可能不起作用,因为您的文档处于怪癖模式。我只是花了几个小时尝试各种方法的组合,这些方法在IE9中都不起作用,然后注意到“调试工具”窗口告诉我它正在渲染“浏览器模式:IE9文档模式:怪癖”。将
放在我的文档顶部立即修复了它

现在回答你的问题有点晚了,但我希望这能帮助其他人:)