是否有针对IE6的JavaScript PNG修复程序,允许CSS背景定位?

是否有针对IE6的JavaScript PNG修复程序,允许CSS背景定位?

Is there a JavaScript PNG fix for IE6 that allows CSS background positioning?

我已经看到了一些修复程序,以使PNG图像在Internet Explorer 6中具有透明性,但是我还没有找到一个还可以在CSS中设置背景位置的修复程序。如果您使用Sprite,那就太麻烦了。我求助于使用GIF(质量不高),根本不使用透明图像或提供与IE6完全不同的样式表。 IE6是否有允许PNG透明胶片和背景定位的修复程序?


是的。将图像转换为使用索引的托盘(png256)。您可以支持透明度(就像gif一样),但不支持alpha通道。

您可以使用Irfanview和pngout插件pngquant或pngnq进行此操作。

YUI性能团队也做了精彩的演讲,涵盖了其他许多图像优化概念。


这是上个月左右出现的一项新技术。从页面:

In this script image tags are supported, both with and without a blank spacer GIF, and background image PNGs may be positioned, as well as repeated, even if they're smaller than the content element they're in.


DD_belatedPNG.js效果很好


当背景为静态时,我使用TweakPNG将PNG中的"背景颜色"块更改为正确的颜色(而不是默认的灰色)。任何常规浏览器都将忽略此内容,因为alpha通道会覆盖它,但是IE6及更低版本将使用该颜色而不是alpha通道。

这意味着我们在IE7中具有透明度,而在IE6及更低版本中却表现良好。而且所有css的定位和重复都是可能的(因为没有hack!)。


IE PNG Fix v2.0支持完整的alpha position / repeat


实际上,您可以利用IE6的alpha过滤器和CSS clip属性,在IE6中使用纯CSS获得具有alpha透明度的定位背景图像。朱利安·莱科特(Julien Lecomte)在他的博客中描述了该技术。

请注意,此技术的确会导致每次使用Alpha滤镜时性能下降。


推荐阅读