IE过滤器语句打破IE9背景剪辑

时间:2012-10-16 00:11:47

标签: css css3 internet-explorer-9

我相信默认情况下所有浏览器都使用background-clip: border-box;。这似乎是默认行为。

使用时:http://www.colorzilla.com/gradient-editor/它指定过滤器作为最终属性。使用IE9时,背景会滑出边框,border-clip属性将失效。

这是一个小提琴来说明:http://jsfiddle.net/tPDMb/3/

我最后刚刚删除过滤器语句,但这会导致ie9和更低版本根本没有背景渐变。

还有其他人遇到过这个问题吗?

1 个答案:

答案 0 :(得分:1)

说明默认行为是剪辑到边框是正确的,background-clip的初始值确实是border-box

问题是IE过滤器不是真正的CSS背景层。因此,IE渐变滤镜将忽略所有背景和边框定位/剪裁属性,如background-clipbackground-positionborder-radius。不幸的是,这是设计上的;获得渐变背景在IE9中工作的唯一方法是在使用预渲染渐变图像的同时尊重这些属性。如果您需要支持较旧的IE,只需将ColorZilla提供的SVG部件替换为PNG图像或类似物。