使用DD_belatedPNG让IE6支持PNG透明图片

知更鸟
知更鸟
知更鸟
1528
文章
6915
评论
2010年7月2日15:49:40 34 22K

众所周知IE6不支持透明的PNG图片,而PNG图片在Web设计方面表现力上,具有其它图形格式所达不到的效果,IE6这一致命缺陷极大地限制了Web设计的创意发挥。

虽然解决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>。

我制作的热点新闻主题,就加入了DD_belatedPNG处理导航PNG透明图片,使其在不同浏览器下保持相同的外观。

使用方法:

首先下载JS文件

0.0.8a.js (未压缩版本)

0.0.8a-min.js (压缩版)

英文说明

之后在页面中引用代码:

<!–[if IE 6]>
<script type=”text/javascript” src=”下载下来的JS路径”></script>
<script>
DD_belatedPNG.fix(‘CSS选择器, 应用类型’);
</script>
<![endif]–>

引用函数是 DD_belatedPNG.fix() , 括号里分别填写应用PNG的CSS选择器(可使用ID选择器和类选择器)和应用类型(分为img和background两种)。

如DD_belatedPNG.fix(‘#box-one, img’) 或者 DD_belatedPNG.fix(‘.header, background’) 等。

这些可以简写成 DD_belatedPNG.fix(‘#box-one, .header, img,background’);  。

更多选择器的如 DD_belatedPNG.fix(‘#box-one, .header,#footer,.box-two a:hover, img,background’);  等等。

另外,为解决IE6下背景图闪烁,可以在页面中添加如下脚本

<!–[if IE 6]>
<script type=”text/javascript”>
// <![CDATA[
if((window.navigator.appName.toUpperCase().indexOf("MICROSOFT")>=0)&&(document.execCommand))
try{
document.execCommand("BackgroundImageCache", false, true);
}
catch(e){}
// ]]>
</script>
<![endif]–>

weinxin
关于本站
分享交流WordPress经验与技巧,关注前端设计与网站制作。仅用于功能演示。
最佳 CSS 框架 Web前端

最佳 CSS 框架

在构建网站时,使用 CSS 框架是一个实时的节省,因为它为您提供了每个网页设计师和前端开发人员在制作网站时需要的工具。 CSS 框架是一个软件框架,它允许使用 HTML/CSS 进行更简单、更符合标准...
line-height安卓中不垂直居中 Web前端

line-height安卓中不垂直居中

设计响应式网页,PC端和移动端的样式兼容性,很让人挠头,最常见的就是文字垂直不居中,而且苹果手机和安卓手机下表现也不尽相同,往往苹果手机是垂直居中的,但在安卓机上字却靠上了,总是差那么一像素,应该是安...
jQuery幻灯片插件:OWL Carousel Web前端

jQuery幻灯片插件:OWL Carousel

Owl Carousel 是一个强大、实用但小巧的 jQuery 幻灯片插件,它具有以下特点: 兼容所有浏览器 支持响应式 支持 CSS3 过度 支持触摸事件 支持 JSON 及自定义 JSON 格式...
js实时获取浏览器窗口大小 Web前端

js实时获取浏览器窗口大小

js实时获取浏览器窗口大小,我们可以使用addEventListener()方法来实现。该addEventListener()方法可以注册事件处理程序以侦听浏览器窗口resize事件,例如window...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论:34   其中:访客  20   博主  2   引用   12
    • underone underone 3

      回头工作中试试看

      • 美女 身材 美女 身材 0

        折腾,真是爱折腾

        • icesaturn icesaturn 2

          已经发现这种代码会与部分幻灯插件产生不兼容的情况,而且好像也不能说是完美。一句话,IE6老矣啊

          • Don Don 1

            这个很好,记录之。。。IE6在国外还是很占市场的!

              • 知更鸟 知更鸟

                @ Don 你确定IE6在国外还是很占市场的!不是国内?

                  • hinesey hinesey 2

                    @ 知更鸟 万恶的IE6,很多客户还在用IE6呢。。 无奈啊

                • insomnia insomnia 0

                  这个是不是不支持position属性啊?我试验了一下,好像是不支持这个属性啊。求解答

                  • wasiuk wasiuk 1

                    但是在XP Sp3下IE6是不支持的……

                      • wasiuk wasiuk 1

                        @ wasiuk 写错了,应该是IE6.0的Sp3版本不支持。

                      • missjuan missjuan 0

                        DD_belatedPNG 好像就支持IETexter下面的IE6,不支持绿色版的IE6

                        • 老衲 老衲 1

                          问鸟哥个问题 这样透明解决了 我的图大,用img的height来变小,但是属性表现不出来,怎么解决啊,不知道懂我意思不…
                          另忘了说 我透明方法用的是DD_belatedPNG

                          • 维多 维多 0

                            感谢。。。问题解决了。

                            • 张鹏 张鹏 0

                              你好,我是新手,用你们的模板修改不好 你们可以提供帮助吗?要是可以了联系QQ357717717

                              • DRIVER DRIVER 1

                                下载链接失效

                                • hinesey hinesey 2

                                  IE6下PNG是透明了,但N多页面出错,而且错得很厉害 。。。兼容性比较差

                                  • keepsilent keepsilent 1

                                    每次来看鸟哥写的文章,都很实用。每次来都能满载而归的感觉…

                                    • 黑色眼睛 黑色眼睛 0

                                      你好,我看了您的“使用DD_belatedPNG让IE6支持PNG透明图片”,但是还是不会,能不能加qq号具体说下,我qq:1585028711,麻烦了。

                                      • 酷剑 酷剑 2

                                        你的ie6属性少了一个 –

                                        • 丿 丿 0

                                          其实是因为网吧里的用的ie6比较多,好像差不多网吧里面用的浏览器都是ie6的

                                          • 淡入&淡出 淡入&淡出 0

                                            我改了,可是没什么效果呢,我想问一下怎么加事?