刚才看见有人回答这个问题了,怎么又没了
IE 10 已经不再支持 DirectX filter,因为直接可以使用 CSS3 了。
下面是跨浏览器的写法
.top_nav {width: 100%
height: 29px
/* 如果浏览器不支持渐变,使用图像作为背景 */
background: url(gradient.jpg)
/* Webkit: Safari 4-5, Chrome 1-9 */
background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#636363), to(#393939))
/* Webkit: Safari 5.1+, Chrome 10+ */
background: -webkit-linear-gradient(top, #636363, #393939)
/* Firefox 3.6+ */
background: -moz-linear-gradient(top, #636363, #393939)
/* Opera 11.10+ */
background: -o-linear-gradient(top, #636363, #393939)
/* IE 10 */
background: -ms-linear-gradient(top, #636363, #393939)
/* IE <10 */
FILTER: progid:DXImageTransform.Microsoft.Gradient(startColorStr=#636363, endColorStr=#393939)
// CSS3 标准
background: linear-gradient(#636363, #393939)
}
似乎IE10里面就没必要用expression来做渐变效果了,它是原生支持CSS3渐变的,直接用个css3的属性就行:linear-gradient(to bottom, orange, black)
像你的这个样式直接改成下面这样就行了:
.top_nav { width: 100%height: 29pxfilter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#636363', endColorstr='#393939', GradientType=0 )background:linear-gradient(to bottom, #636363, #393939)}
expression会影响浏览器的性能,一般能用CSS解决就不用expression了~~
呃。。。刚才漏掉了一个background:
您好!很高兴为您答疑。filter类css属性是ie特有,因为其并未列入w3c标准,所以在其它严格遵循该标准的浏览器下都未进行支持,请知晓。
如果对我们的回答存在任何疑问,欢迎继续问询。