我发现很多关于IE9没有呈现背景图像的问题,但找不到符合我需要的解决方案。
我使用CSS3渐变生成器作为我的背景,除IE9外,适用于所有现代浏览器。
我正在使用的代码是:
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中运行,那么评论/答案将会非常感激。
谢谢。
答案 0 :(得分:2)
并不是IE9不渲染背景图像,只是如果你想在IE9中使用渐变,你必须使用SVG。使用ColorZilla创建渐变,并确保在最后检查“IE9支持”选项。它会自动生成一个数据uri SVG供您使用,而无需实际使用图像文件。
答案 1 :(得分:1)
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff', endColorstr='#f2f2f2');
答案 2 :(得分:0)
ie9不支持rgba格式,所以试试这个
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8cbd6', endColorstr='#edeeec',GradientType=0 ); /* IE6-9 */