IE6下Png透明最佳解决方案

曾经一度的采用滤镜的方法搞定这个问题,弊端是当有多个png图片的时候,这就造成了css的压力,得写多少css代码呀,也尝试过js,缺点是不支持CSS中backgrond-position与background-repeat

 


这 个问题曾经困扰我许久许久……曾经一度的采用滤镜的方法搞定这个问题,但是这种方法有个弊端。就是当有多个png图片的时候,这就造成了css的压力,得 写多少css代码呀。也尝试过js,但是这些方法都有一个缺点,就是不支持CSS中backgrond-position与background- repeat.是否有一种方法能解决全站的ie6下png透明问题呢。

搜遍谷歌,发现了一个最完美的解决方案:DD_belatedPNG(点解连接 查看官方).

原理

这个js插件使用了微软的VML语言进行绘制,而其他多数解决PNG问题的js插件用的是AlphaImageLoader滤镜.

使用方法

1.点击这里下载 DD_belatedPNG.js

2.在网页中引用,如下:

复制代码
代码如下:

<!--[if IE 6]>
<script src="DD_belatedPNG.js"></script> _fcksavedurl=""DD_belatedPNG.js"></script>"
<script>
/* EXAMPLE */
DD_belatedPNG.fix('.png_bg');
/* 将 .png_bg 改成你应用了透明PNG的CSS选择器 */
</script>
<![endif]-->

使用a:hover请留意

想要用透明PNG作为a:hover时的背景图片,,需要以”a:hover”来作为选择器

例:

复制代码
代码如下:

<!--[if IE 6]>
<script type="text/javascript" src="js/DD_belatedPNG.js" ></script>
<script type="text/javascript"> DD_belatedPNG.fix('.png_bg,.box a:hover');
</script>
<![endif]-->

时间: 2024-10-30 16:58:39

IE6下Png透明最佳解决方案的相关文章

png在IE6 下无法透明的解决方法汇总

  解决PNG图片在IE6下的透明这类问题谷歌上很多解决方案,属于非常常见的问题,以前我做的时候,这类透明我都是用gif,而直接避开png,所以到现在我并没有去了解过这个问题.今天就把这个问题整理下,解决方案汇总给大家. FF和IE7已经直接支持透明的png图了,下面这个主要是解决IE6下透明PNG图片有灰底的 复制代码 代码如下: style="FILTER: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=images/fl.pn

JS解决ie6下png透明方法

  解决ie6下png透明的问题想必前端都比较清楚,虽然有很多方法,但是我觉得用JS还是最省事的方法,不管是图片还是背景图片都OK. <!DOCTYPE html> <html lang="en"> <head> <title>解决ie6下png透明方法之JS法-</title> <style type="text/css"> .a{background: #FFFF99 ; backgroun

JS解决ie6下png透明的方法实例

解决ie6下png透明的问题想必前端都比较清楚,虽然有很多方法,但是我觉得用JS还是最省事的方法,不管是图片还是背景图片都OK.   复制代码 代码如下: <!DOCTYPE html> <html lang="en"> <head> <title>解决ie6下png透明方法之JS法-</title> <style type="text/css">  .a{background: #FFFF99

JS解决ie6下png透明的方法实例_javascript技巧

复制代码 代码如下: <!DOCTYPE html><html lang="en"><head><title>解决ie6下png透明方法之JS法-</title><style type="text/css"> .a{background: #FFFF99 ;  background-image: url(bg.jpg); height:800px;padding: 50px;  } .b{ fl

png在IE6 下无法透明的解决方法汇总_javascript技巧

FF和IE7已经直接支持透明的png图了,下面这个主要是解决IE6下透明PNG图片有灰底的 复制代码 代码如下: style="FILTER: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=images/fl.png')" 语法: filter : progid:DXImageTransform.Microsoft.AlphaImageLoader ( enabled=bEnabled , sizingMethod=sSi

css/js实现png图片ie6下背景透明实现代码

在IE6直接显示(包括内容中直接插入.作为背景图片)PNG-24格式的图片,是不能正确显示透明.半透明内容与其他内容的叠加呈现效果的.那些IE7+以及其他标准浏览器中漂亮的虚化.淡出.投影效果,在IE6-中很可能成了一坨难看的灰色. 如果你无法忍受ie6中难看的灰色,如果你无法放弃半透明叠加的效果,你会有机会遇到这个问题的.解决途径有不少.这里列举一些,以供参考: 1,修改设计效果,使之可以整块透明区域被切片而不影响显示效果.或者去掉半透明效果. 2,htc文件 这里的htc,和宏达手机是无关的

DD_belatedPNG,IE6下PNG透明解决方案(国外)_javascript技巧

我们知道IE6是不支持透明的PNG的,这无疑限制了网页设计的发挥空间. 然而整个互联网上解决这个IE6的透明PNG的方案也是多不胜数,从使用IE特有的滤镜或是e­xpression,再到javascript+透明GIF替代.但是这些方法都有一个缺点,就是不支持CSS中backgrond-position与background-repeat. 而我今天介绍DD_belatedPNG,只需要一个理由,就是它支持backgrond-position与background-repeat.这是其他js插件

IE6下溢出多余文字解决方案Iebug

方案1: 原因:出现这种情况绝大多数都是与浮动有关系的. [通常都是用这个方案解决的] 解决思路: 检查下出现这种情况的容器(比如DIV)是否有用到浮动,并且,当前浮动是否有必要应用:假如即使不用浮动也可以达到效果话,就将浮动去除.或是,加一个 "Clear:both" 清除浮动.(像绝对定位以及浮动这些属性,一般是能不用就不用,至于为啥俺说不出来,我是完全凭觉得做事的,事实证实我这么做是准确的 ) 方案2: 原因:检查代码中是否有添加注释. 解决思路: 如果代码中包含了注释,可以尝试

ie6下png图片背景不透明的解决办法使用js实现_javascript技巧

我们时常在使用png图片的时候,在ie6下发生背景不透明的问题,下面给大家介绍下一个js解决的方式. 首先我们要用到一个js,代码如下: 复制代码 代码如下: /** * DD_belatedPNG: Adds IE6 support: PNG images for CSS background-image and HTML <IMG/>. * Author: Drew Diller * Email: drew.diller@gmail.com * URL: http://www.diller