IE6下实现背景透明后遗症

来源:百度知道 编辑:UC知道 时间:2024/06/02 00:12:43
刚做了个站,背景是透明的,在IE7 FF下都能正常显示PNG的透明效果,可是到了IE6就没法显示了,在网上找了很多方法,基本都是一个原理,通过IE6支持的滤镜来完成:
filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='alpha.png', sizingMethod='scale');
透明问题是解决了,可是另一个头痛的问题是,该滤镜处理过的透明区域内的所有包含链接的文字失效,文本框无法输入,右键失效。应该是被该滤镜层所覆盖了。以上都是在IE6下实现透明成功后的后遗症,在IE7和FF下还是一切正常。
我想问问,有没有解决这个的方法,说说你的解决方法,或者是其他途径实现。

该滤镜处理过的透明区域内的所有包含链接的文字失效,文本框无法输入

在层上加一个绝对定位。

另外这个可以简写成
background: none url(alpha.png)!important;//ie7和FF下用这个
filterrogidXImageTransform.Microsoft.AlphaImageLoader(src='alpha.png', sizingMethod='scale');//ie6下是这个

但不建议,因为W3C检测报错。请尽量不要用PNG。CSS禅意花园有介绍50%透明PNG,这里就不多提了,大家自己可以查查资料

至于4楼的我更是坚决反对使用。仔细看看定义了以大堆,最后的核心还是脱离不了
var strNewHTML = "<span " + imgID + imgClass + imgTitle
+ " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
+ "filterrogidXImageTransform.Microsoft.AlphaImageLoader"
+ "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"

在css中添加filter:alpha(opacity=50) opacity为透明度
例如:
#tcolumn-1-thirty {
height: 120px;
width: 938px;
background:url('../images/userimg