首页 / 素材代码 / 用DD_belatedPNG解决IE6下PNG图片无法透明的问题

用DD_belatedPNG解决IE6下PNG图片无法透明的问题

IE6绝对是一个很头疼的问题,说真的,如果是我自己用的主题,一般不会太迁就IE6了,但是要制作收费主题,这IE6目前还是要兼顾的,首先面临的一个比较普遍的问题就是IE6下PNG图片无法透明,目前设计者们采用的较多的方法是通过DD_belatedPNG插件来实现IE6下PNG图片透明。所以,今天也转载分享一下,备个案,以后好找。

虽然解决IE6的透明PNG的方法也很多,从使用IE特有的滤镜或是e­xpression,再到javascript+透明 GIF替代.但是这些方法都有一个缺点,就是不支持CSS中backgrond-position与background-repeat属性。而使用DD_belatedPNG.js可完美的解决IE6下PNG图片透明问题,并且支持backgrond-position与background-repeat. 这是其他方法所不具备的,同时DD_belatedPNG还支持a:hover属性,以及<img>。

cmhello.com-120006

DD_belatedPNG下载

0.0.8a.js (未压缩版本) | 0.0.8a-min.js (压缩版) | 英文说明

DD_belatedPNG使用方法

在页面中引用代码:

1
2
3
4
5
6
<![if IE 6]><script type="text/javascript" src="下载下来的JS路径"></script><script>
DD_belatedPNG.fix('CSS选择器,应用类型');</script><![endif]>

CSS选择器可使用ID选择器和类选择器;应用类型分别为img和background两种:

例1:

1
DD_belatedPNG.fix('.pngfix,background');

表示“类选择器为pngfix的background图片”

例2:

1
DD_belatedPNG.fix('#pngfix,img');

表示“ID选择器为pngfix的img图片”

此外还有简写方法

1
DD_belatedPNG.fix('.pngfix,#pngfix,background,img');

多个选择器的写法(对于有多处div需要使用png透明background背景图片的,建议添加一个共同的CSS选择器便于使用)

1
DD_belatedPNG.fix('#box-one,.header,#footer,.box-two a:hover, img,background');

以上几种方法可以根据需要自由选择使用。

解决IE6下背景图闪烁的方法

1
2
3
4
5
6
7
8
9
10
11
<!–[if IE 6]><scripttype="text/javascript">
// <![CDATA[if((window.navigator.appName.toUpperCase().indexOf("MICROSOFT")>=0)&&(document.execCommand))try{document.execCommand("BackgroundImageCache", false, true);}catch(e){}// ]]></script><![endif]–>
Return top