如何使IE6支持css background png透明背景图片

IE6不支持png-24透明图片是相当大的缺陷,而现在网页制作为了达到预想的设计效果大多都采用png透明图片,博客吧前些日子的仿美团网wordpress淘宝客主题meituan使用的就是png透明图片,IE6是位“老人家”,接受不了各式各样的新兴事物,因此需要另辟蹊径使IE6支持png24透明图片。对于img的png图片可以使用IE特有的滤镜或者expression实现透明,而对于css background的背景图片就需要使用DD_belatedPNG才能实现。

详细操作方法:

下载需要的js文件:压缩版下载 非压缩版下载

在网页中的<head></head>之间添加以下引用代码




DD_belatedPNG.fix('CSS选择器, 应用类型');


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

例1:

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

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

例2:

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

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

此外还有简写方法

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

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

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

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

另外,IE6背景图片会闪烁的问题,可以通过在页面中添加以下代码解决:



// =0)&&(document.execCommand))
try{
document.execCommand("BackgroundImageCache", false, true);
}
catch(e){}
// ]]>


PS:IE6本该是要淘汰的浏览器,我本人是非常不喜欢的,做主题的时候,基本不会刻意去兼容IE6浏览器,除非是售卖的wordpress淘宝客主题(买家要求支持),而且谷歌、微软等都加入反IE6行列了,大家作点贡献吧~~

本自代码来自知更鸟博客

网友留言

  1. 美金兄弟连 美国 加利福尼亚州洛杉矶县洛杉矶市QuadraNet股份有限公司 2012-09-01

    对代码感觉很困吗,用插件也行吧

  2. Michael Kors 广东省广州市 电信 2012-09-02

    IE6是过时了,但还在用XP的只好用IE6。 8太慢了

  3. 昊云 湖南省长沙市 电信 2012-09-02

    表示用IE6很少了!

  4. 倡萌 广东省深圳市 电信 2012-09-04

    DD_belatedPNG是很多设计者使用的方法 作为收费主题 的确也还是要考虑一下IE6 苦逼啊

  5. 陈文韬博客 广东省珠海市 电信 2012-09-05

    站长你去百度申诉了吗?我有个站K了半个多月,申诉之后就放出来了。

    • 板凳 广东省湛江市 联通 2012-09-05

      刚K的时候投诉了一次,然后就没下文了。

  6. 朵未 浙江省温州市 电信 2012-09-13

    已经好久不用IE6了。IE9也很少用。

    • 板凳 广东省湛江市 联通 2012-09-14

      不怎么使用IE浏览器,就是在做网页的时候会用来测试,其余都很少会用。

我要留言