利用IE的滤镜解决IE6下PNG图片透明BUG
DD_belatedPNG.js解决IE6下PNG透明图片问题相比其他方法是比较完美的,之前一直在用,没有出现什么问题,但是今天发现这个js导致一个选项卡在IE6下出现问题。一开始并不知道是DD导致的问题,用Debug查看,发现选项卡列表多出两个<shape>标签,如图:
多出的这两个<shape>标签导致选项卡的index值发生变化,选项卡的标题和内容错开。然后有群里的朋友告知是DD引发的问题,把DD去掉测试,<shape>标签消失,问题解决。
去掉DD后就要用其他方法来解决IE6下PNG图片的问题,想到使用IE的滤镜来解决,但是滤镜有一个问题,就是背景不能定位,但是DD不能使用,只能针对该页面专门用滤镜来处理。(还有一个小问题,就是不能直接在定义的这个层上使用link和button,会出现无焦点的问题,应该是一个BUG,不过通过叠加层很容易解决)
代码如下:
1 .icon{ 2 background:url(imgADD.png) no-repeat; 3 } 4 5 /*ie6*/ 6 * html .icon{ 7 background:none; 8 filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='imgADD.png', sizingMethod='crop'); 9 } 10 11 /*ie7*/ 12 *+html .icon{ 13 background:url(imgADD.png) no-repeat !important; 14 }