我发现了许多关于IE9不渲染背景图像的问题,但找不到适合我需求的解决方案。
我使用CSS3渐变生成器作为我的背景,除了IE9之外,它在所有现代浏览器上都工作得很好。
im使用的代码是:
body {
background-size: cover;
background-repeat: no-repeat;
background-image: linear-gradient(bottom, rgb(184,190,227) 49%, rgb(118,135,250) 80%);
background-image: -o-linear-gradient(bottom, rgb(184,190,227) 49%, rgb(118,135,250) 80%);
background-image: -moz-linear-gradient(bottom, rgb(184,190,227) 49%, rgb(118,135,250) 80%);
background-image: -webkit-linear-gradient(bottom, rgb(184,190,227) 49%, rgb(118,135,250) 80%);
background-image: -ms-linear-gradient(bottom, rgb(184,190,227) 49%, rgb(118,135,250) 80%);
background-image: -webkit-gradient(linear,left bottom,left top,color-stop(0.49, rgb(184,190,227)),color-stop(0.8, rgb(118,135,250)));
}我设置了一个jsFiddle页面:http://jsfiddle.net/nUA98/
因此,如果有人知道为什么它在IE9中不起作用,评论/回答将非常感谢。
谢谢。
发布于 2012-10-31 18:53:40
这并不是说IE9不渲染背景图像,而是如果你想在IE9中使用渐变,你必须使用SVG。使用ColorZilla创建渐变,并确保选中最后的"IE9 support“选项。它自动生成一个供您使用的data-uri SVG,而不必实际使用图像文件。
发布于 2012-10-31 18:52:37
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff', endColorstr='#f2f2f2'); 发布于 2012-10-31 19:07:59
ie9不支持rgba格式,所以试试这个
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8cbd6', endColorstr='#edeeec',GradientType=0 ); /* IE6-9 */
https://stackoverflow.com/questions/13156172
复制相似问题