2012-05-02 57 views
0

我有这样的:CSS属性不工作的IE6

background: -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(0%,rgba(255,255,255,0.56)), color-stop(100%,rgba(210,210,210,1))); 

其工作的所有浏览器和IE9,但不工作的IE6 谁能告诉我使用别的什么

问候

+2

webkit的装置(狩猎&铬),所以它不会在IE,这应该在IE'滤波器工作:的progid:DXImageTransform.Microsoft.gradient(startColorstr ='#CCCCCC ',endColorstr ='#000000');' – waterschaats

+0

标准渐变仅适用于现代浏览器,不适用于IE。 – Rob

+0

如果你想让他们在Firefox中阅读这篇文章http://hacks.mozilla.org/2009/11/css-gradients-firefox-36/ – Chinook

回答

1

您需要使用IE的旧过滤器规则,您在问题中提到的规则有一个供应商前缀,它将目标定位到webkit(chrome ,safari等)浏览器只。 - 有一个整洁的发电机here这将帮助你在跨平台渐变。 IE6-9的规则如下所示:

filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1e5799', endColorstr='#7db9e8',GradientType=0); /* IE6-9 * 
0

webkit前缀仅适用于Webkit浏览器,即Chrome,Safari和Android以及iPhone。例如,您需要为Firefox使用-moz,为Opera使用-o。

IE6根本没有任何渐变支持,所以您需要改用图片,或者放弃IE6支持,这可能是一个不错的选择; IE6上还没有很多用户。 (除非专门用于例如政府,它们经常被卡住。)

+0

IE6-9支持渐变,但通过filter:declarations – dmp

0

Internet Explorer渐变过滤器不支持颜色停止,渐变角度和径向渐变。这意味着您只能指定具有2种颜色的水平或垂直线性渐变:StartColorStr和EndColorStr。

0

Internet Explorer 8及更低版本不是不支持渐变的唯一浏览器,因此使用过滤器不会捕获所有浏览器。

另一种方法是to use Modernizr以支持检测功能并使用后备图像或纯色。

例如:

#box { 
// Normal gradient syntax 
} 

.no-cssgradients #box { 
// Fallback image 
}