Rumah  >  Artikel  >  hujung hadapan web  >  使用css解决png透明图片在ie6正常显示的方法

使用css解决png透明图片在ie6正常显示的方法

高洛峰
高洛峰asal
2017-03-27 17:25:531640semak imbas

很久没写CSS了,遇到一个png透明logo折腾了我很久,也怪以前的页面直接不考虑透明的问题。在网上找到几种办法,有用css实现的,有些是用js实现,用js感觉大材小用了,能用纯css解决就css吧,这里感谢蓝莓公主的帮助。以下的两种方法都是尝试过可行的,不过在我的虚拟机下的ie6图片完全透明了,不知道是不是我虚拟机的问题。
先将图片存为 PNG-24 透明格式。
(图片要绝对路径)
方法一:用png图作背景
要注意hack
html代码


css代码
.logo { width: 338px; height: 57px; float: left;  url( /images/logo.png) 0px 0px no-repeat!important; text-indent: -1000px; _background-image: none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'#\'" /images/logo.png', senabled='true', sizingMethod='scale'); }

标准:_background-image: none; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'#\'" /templets/dyimgs/wymrs/images/logo.png', enabled='bEnabled', sizingMethod='image');


方法二:插入png图片,定义img
这个方法要准备一完全透明的图片transparent.gif,大小随意。
html代码


css代码
.logo { width: 338px; height: 57px; float: left;  }
.logo img {  width: 338px; height: 57px; }
/* png 透明 兼容 ie6 */
.logo img {
azimuth: expression(
 this.pngSet ? this.pngSet = true:(this.nodeName == "IMG" && "http://blog.51cto.com/viewpic.php?refimg=" + this.src.toLowerCase().indexOf('.png')>-1 ? (this.runtimeStyle.backgroundImage = "none",
 this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'#\'" //qianduangcs.blog.51cto.com/2624849/" + "http://blog.51cto.com/viewpic.php?refimg=" + this.src + "', sizingMethod='image')",
 "http://blog.51cto.com/viewpic.php?refimg=" + this.src=\'#\'" /images/transparent.gif"):(this.origBg = this.origBg? this.origBg :this.currentStyle.backgroundImage.toString().replace('url("','').replace('")',''),
 this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'#\'" //qianduangcs.blog.51cto.com/2624849/" + this.origBg + "', sizingMethod='crop')",
 this.runtimeStyle.backgroundImage = "none")),this.pngSet=true
);
}

有时候超链接加了这个透明滤镜,然后页面上所有超级连接 全点不到了  ,解决办法是:

给a加上position:relative;

不过这里要提醒你,你这里的image路径是相对路径,那么值得注意的是,这个相对路径是根据html相对的,而不是CSS。

Atas ialah kandungan terperinci 使用css解决png透明图片在ie6正常显示的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn