IE6中png图片透明方法

简介:

一、png图片写在css中作为背景图(IE5.5+ 的 AlphaImageLoader 滤镜功能

 

 
  1. <style> 
  2. .png{ 
  3.     border:1px solid #360; 
  4.     width:905px; 
  5.     height:545px; 
  6.     background: url(yun.png) no-repeat; 
  7.     _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled='true'sizingMethod='scale'src="yun.png"); 
  8.     _background:none; 
  9. </style> 
  10.  
  11. <div class="png"></div> 

 

二、png图片写在html中作为插入图(一般使用js实现

方法一:

 
  1. <!--[if IE 6]> 
  2. <script> 
  3. function correctPNG(){ 
  4. for(var i=0; i<document.images.length; i++){ 
  5. var img = document.images[i]; 
  6. var imgimgName = img.src.toUpperCase(); 
  7. if (imgName.substring(imgName.length-3, imgName.length) == "PNG"){ 
  8. var imgID = (img.id) ? "id='" + img.id + "' " : ""; 
  9. var imgClass = (img.className) ? "class='" + img.className + "' " : ""; 
  10. var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "; 
  11. var imgStyle = "display:inline-block;" + img.style.cssText; 
  12. if (img.align == "left") imgStyle = "float:left;" + imgStyle; 
  13. if (img.align == "right") imgStyle = "float:right;" + imgStyle; 
  14. if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle; 
  15. var strNewHTML = "<span "+ imgID + imgClass + imgTitle + "style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";" 
  16. + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" + "(src='" + img.src + "'sizingMethod='scale');\"></span>"; 
  17. img.outerHTML = strNewHTML
  18. ii = i-1; 
  19. window.attachEvent("onload", correctPNG); 
  20. </script> 
  21. <![endif]--> 
  22.  
  23. <img src="yun.png" border="0" /> 

 

方法二:(注:需要在图片处调用js)

 

 
  1. <script language="javascript"> 
  2. // 修复 IE 下 PNG 图片不能透明显示的问题 
  3. function fixPNG(myImage) { 
  4. var arVersion = navigator.appVersion.split("MSIE"); 
  5. var version = parseFloat(arVersion[1]); 
  6. if ((version >= 5.5) && (version < 7) && (document.body.filters)){ 
  7.      var imgID = (myImage.id) ? "id='" + myImage.id + "' " : ""; 
  8.      var imgClass = (myImage.className) ? "class='" + myImage.className + "' " : ""; 
  9.      var imgTitle = (myImage.title) ? "title='" + myImage.title   + "' " : "title='" + myImage.alt + "' "; 
  10.      var imgStyle = "display:inline-block;" + myImage.style.cssText; 
  11.      var strNewHTML = "<span " + imgID + imgClass + imgTitle 
  12.    + " style=\"" + "width:" + myImage.width 
  13.    + "px; height:" + myImage.height 
  14.    + "px;" + imgStyle + ";" 
  15.    + "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader" 
  16.    + "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>"; 
  17.      myImage.outerHTML = strNewHTML
  18. } } 
  19. window.onload=function(){ 
  20.          document.getElementById("top").style.height=screen.height/5+"px"; 
  21.          
  22. </script> 
  23. <img src="logo.png" border="0" onload="fixPNG(this)" /> 

 




      本文转自许琴 51CTO博客,原文链接:http://blog.51cto.com/xuqin/964942,如需转载请自行联系原作者



相关文章
|
9月前
|
Web App开发
clearTimeout 方法在IE上的兼容问题
clearTimeout 方法在IE上的兼容问题
55 0
|
JavaScript 前端开发
关于 getBoundingClientRect 方法在360极速浏览器的 IE 兼容模式下获取 documentElement 宽度比在 IE 浏览器下面多 4px 的问题
关于 getBoundingClientRect 方法在360极速浏览器的 IE 兼容模式下获取 documentElement 宽度比在 IE 浏览器下面多 4px 的问题
65 0
关于 getBoundingClientRect 方法在360极速浏览器的 IE 兼容模式下获取 documentElement 宽度比在 IE 浏览器下面多 4px 的问题
|
Windows
Windows 技术篇-安装指定版本Internet Explorer浏览器方法,IE浏览器的升级和降级
Windows 技术篇-安装指定版本Internet Explorer浏览器方法,IE浏览器的升级和降级
357 0
Windows 技术篇-安装指定版本Internet Explorer浏览器方法,IE浏览器的升级和降级
|
Windows
Windows 技术篇-Internet Explorer浏览器启用方法,windows找不到ie浏览器解决办法
Windows 技术篇-Internet Explorer浏览器启用方法,windows找不到ie浏览器解决办法
132 0
Windows 技术篇-Internet Explorer浏览器启用方法,windows找不到ie浏览器解决办法
|
Web App开发 前端开发
图片垂直居中(兼容IE6/7)
我们知道单行文字垂直居中时只用让`height=line-height`即可,那么图片以及多行文字是如何垂直居中的呢?现以如下图片和代码为例,将我搜集得到的方法做一个总结说明:
1592 0
|
Web App开发 JavaScript 前端开发