IE中的filter
属性和-ms-filter
属性有何区别?如果我使用其中一个,应该同时使用它们吗?它们是否执行相同的操作,但仅适用于IE的某些版本?
IE中的filter
属性和-ms-filter
属性有何区别?如果我使用其中一个,应该同时使用它们吗?它们是否执行相同的操作,但仅适用于IE的某些版本?
微软引入了-ms-filter
来使Internet Explorer更加符合标准(CSS 2.1要求厂商扩展必须有厂商前缀)。由于原始的filter
属性语法不符合CSS 2.1标准,因此IE8+需要将-ms-filter
属性的值用引号括起来。
filter: alpha(opacity=40);
-ms-filter: "alpha(opacity=40)";
-ms-filter
是在IE8+中支持的,遗留的filter
属性也是我所知道的为了向后兼容而在所有版本的Internet Explorer中都得到支持。
相关链接:http://blogs.msdn.com/b/ie/archive/2008/09/08/microsoft-css-vendor-extensions.aspx
请注意,对于滤镜的支持可能会在IE10中被删除。
-ms-filter 属性
设置或检索应用于对象的滤镜或滤镜集合。注意:自 Windows Internet Explorer 9 起,此功能已被弃用。自 Internet Explorer 10 起,此功能已被删除,不应再使用。
我相信-ms
是一些新的CSS3属性的供应商前缀,而filter
是一个旧的属性,用于IE 6-8(我可能在IE 6上错了,但我确定它在IE 8中使用)。这里有更多关于-ms
的信息:http://msdn.microsoft.com/en-us/library/ms531207(VS.85).aspx。