解决IE6与IE7显示PNG格式图片的差别代码

文章摘自:http://zhutengpeng.cn/blog/

 

众所周知,PNG格式图片由于出色的色彩与无损压缩,8位256色索引透明、和32位真彩Alpha透明等等诸多特性渐渐变得普及。。
越来越多的朋友开始选择采用PNG格式图片来制作站点。
但是好东西不一定有良好的浏览器支持。
譬如说IE6,显示PNG格式带有阴影透明效果的图片会有一层灰色的背景,大大降低了图片的质量。
但是IE7对PNG得到了很好的支持。所以本人历来就用IE7,虽然漏洞多多。。呵呵。
同样,火狐,opera等浏览器对PNG支持良好。
凡是以IE6为内核开发的浏览器,都不太支持PNG。
如何解决这一问题呢。。
呵呵,方法肯定有。。
首先第一种方法:在包含有PNG格式图片的网页里head头标签里添加一段javascript,

<script language="javascript">
function correctPNG()
{
for(var i=0; i<document.images.length; i++)
{
  var img = document.images

  var imgName = img.src.toUpperCase()
  if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
  {
   var imgID = (img.id) ? "id='" + img.id + "' " : ""
   var imgClass = (img.className) ? "class='" + img.className + "' " : ""
   var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
   var imgStyle = "display:inline-block;" + img.style.cssText
   if (img.align == "left") imgStyle = "float:left;" + imgStyle
   if (img.align == "right") imgStyle = "float:right;" + imgStyle
   if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle  
   var strNewHTML = "<span " + imgID + imgClass + imgTitle
   + " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
  + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
   + "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
   img.outerHTML = strNewHTML
   i = i-1
  }
}
}
window.attachEvent("onload", correctPNG);
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值