大家可能都知道IE6下使用DXImageTransform.Microsoft.AlphaImageLoader滤镜(用于PNG32 Alpha透明)后链接不能点击的BUG,大家也都知道只要在a标签上加相对定位的属性(position:relative)就可以点击了。
见demo页面中的例子1:http://www.css88.com/demo/ie6bug_filter/(使用IE6查看);
非常好!但是如果在使用滤镜容器的中加上绝对定位,悲剧发生了!a标签上加相对定位的属性(position:relative)链接依然不能点击!
见demo页面中的例子2:http://www.css88.com/demo/ie6bug_filter/(使用IE6查看);
经过近半个小时的折腾终于有了解决方案,就是在使用滤镜的容器外面再加上一个容器,这个容器加上绝对定位。a标签上加相对定位的属性(position:relative)就可以点击了。
见demo页面中的例子3:http://www.css88.com/demo/ie6bug_filter/(使用IE6查看);
原因可能如下:
DXImageTransform.Microsoft.AlphaImageLoader可能改变了容器的层级,真好正好定位属性也能改变元素层级。
如果你知道原因或者有更好的解决方案欢迎留言斧正,探讨。谢谢!
另:
【IE6的疯狂系列】IE6 BUG大全(bug征集、整理中..)
- 本文固定链接: http://www.css88.com/archives/2916
- 转载请注明: 愚人码头 于 WEB前端开发 发表
哎,又是神奇的IE6
http://haslayout.net/css/No-Transparency-Click-Bug
我更喜欢涛哥的这篇文章:使用 background:url(#) 解决 IE bug http://www.99css.com/?p=50
http://www.99css.com/?p=528#comment-1204
别忘了看这个
demo 中的第三组最后一个链接 加上了 position:relative; 链接可以点了,其中描述语句错了。
关于滤镜,我也有个类似的问题,选择另外一种方式来解决,我在这里有过记录:http://popotang.com/blog/index.php/ie-opacity-bug/
把链接写在backgroud:url(“http://www.google.com”);
Pingback 引用通告: “狗日”的IE6
Pingback 引用通告: ie6 系列bug - web前端开发
又看到码头的文章了 崇拜下下
Pingback 引用通告: IE6的bug汇总 | 黄月月鸟飞
早就知道啦,只能在上面再加一层。
Pingback 引用通告: 【IE6的疯狂系列】IE6 BUG大全[转]|脑袋博客
Pingback 引用通告: 博客歪歪 » [笔记] IE6 链接无法点击的修复方法