ie6不能正常显示png24透明图片解决方案_完善中...

IE6的PNG透明度解决方案详解 本文还有配套的精品资源,点击获取 简介:IE6浏览器不完全支持PNG-24格式透明度,但对PNG-8格式支持较好。通过多种技术手段,如JavaScript库、CSS精灵和CSS表达式,可以解决IE6中的PNG透明问题。本解决方案详述了各种方法的应用和优缺点,强调在现代浏览器普及的背景下,选择合适方案时需平衡兼容性和性能。 1. IE6的PNG透明度问题 IE... 阅读详情

方法一、

1.js解决方案

           

1.

<!--[if IE 6]>
  <script src="js/app.js"></script>
    <script> DD_belatedPNG.fix('.pngfix'); </script>

<![endif]-->



2. 在用到透明图片的地方class添加pngfix类

3.  app.js内容如下:

var DD_belatedPNG={ns:"DD_belatedPNG",imgSize:{},delay:10,nodesFixed:0,createVmlNameSpace:function(){if(document.namespaces&&!document.namespaces[this.ns]){document.namespaces.add(this.ns,"urn:schemas-microsoft-com:vml");}},createVmlStyleSheet:function(){var _1,_2;_1=document.createElement("style");_1.setAttribute("media","screen");document.documentElement.firstChild.insertBefore(_1,document.documentElement.firstChild.firstChild);if(_1.styleSheet){_1=_1.styleSheet;_1.addRule(this.ns+"\\:*","{behavior:url(#default#VML)}");_1.addRule(this.ns+"\\:shape","position:absolute;");_1.addRule("img."+this.ns+"_sizeFinder","behavior:none; border:none; position:absolute; z-index:-1; top:-10000px; visibility:hidden;");this.screenStyleSheet=_1;_2=document.createElement("style");_2.setAttribute("media","print");document.documentElement.firstChild.insertBefore(_2,document.documentElement.firstChild.firstChild);_2=_2.styleSheet;_2.addRule(this.ns+"\\:*","{display: none !important;}");_2.addRule("img."+this.ns+"_sizeFinder","{display: none !important;}");}},readPropertyChange:function(){var el,_4,v;el=event.srcElement;if(!el.vmlInitiated){return;}if(event.propertyName.search("background")!=-1||event.propertyName.search("border")!=-1){DD_belatedPNG.applyVML(el);}if(event.propertyName=="style.display"){_4=(el.currentStyle.display=="none")?"none":"block";for(v in el.vml){if(el.vml.hasOwnProperty(v)){el.vml[v].shape.style.display=_4;}}}if(event.propertyName.search("filter")!=-1){DD_belatedPNG.vmlOpacity(el);}},vmlOpacity:function(el){if(el.currentStyle.filter.search("lpha")!=-1){var _7=el.currentStyle.filter;_7=parseInt(_7.substring(_7.lastIndexOf("=")+1,_7.lastIndexOf(")")),10)/100;el.vml.color.shape.style.filter=el.currentStyle.filter;el.vml.image.fill.opacity=_7;}},handlePseudoHover:function(el){setTimeout(function(){DD_belatedPNG.applyVML(el);},1);},fix:function(_9){if(this.screenStyleSheet){var _a,i;_a=_9.split(",");for(i=0;i<_a.length;i++){this.screenStyleSheet.addRule(_a[i],"behavior:expression(DD_belatedPNG.fixPng(this))");}}},applyVML:function(el){el.runtimeStyle.cssText="";this.vmlFill(el);this.vmlOffsets(el);this.vmlOpacity(el);if(el.isImg){this.copyImageBorders(el);}},attachHandlers:function(el){var _e,_f,_10,_11,a,h;_e=this;_f={resize:"vmlOffsets",move:"vmlOffsets"};if(el.nodeName=="A"){_11={mouseleave:"handlePseudoHover",mouseenter:"handlePseudoHover",focus:"handlePseudoHover",blur:"handlePseudoHover"};for(a in _11){if(_11.hasOwnProperty(a)){_f[a]=_11[a];}}}for(h in _f){if(_f.hasOwnProperty(h)){_10=function(){_e[_f[h]](el);};el.attachEvent("on"+h,_10);}}el.attachEvent("onpropertychange",this.readPropertyChange);},giveLayout:function(el){el.style.zoom=1;if(el.currentStyle.position=="static"){el.style.position="relative";}},copyImageBorders:function(el){var _16,s;_16={"borderStyle":true,"borderWidth":true,"borderColor":true};for(s in _16){if(_16.hasOwnProperty(s)){el.vml.color.shape.style[s]=el.currentStyle[s];}}},vmlFill:function(el){if(!el.currentStyle){return;}else{var _19,_1a,lib,v,img,_1e;_19=el.currentStyle;}for(v in el.vml){if(el.vml.hasOwnProperty(v)){el.vml[v].shape.style.zIndex=_19.zIndex;}}el.runtimeStyle.backgroundColor="";el.runtimeStyle.backgroundImage="";_1a=true;if(_19.backgroundImage!="none"||el.isImg){if(!el.isImg){el.vmlBg=_19.backgroundImage;el.vmlBg=el.vmlBg.substr(5,el.vmlBg.lastIndexOf("\")")-5);}else{el.vmlBg=el.src;}lib=this;if(!lib.imgSize[el.vmlBg]){img=document.createElement("img");lib.imgSize[el.vmlBg]=img;img.className=lib.ns+"_sizeFinder";img.runtimeStyle.cssText="behavior:none; position:absolute; left:-10000px; top:-10000px; border:none; margin:0; padding:0;";_1e=function(){this.width=this.offsetWidth;this.height=this.offsetHeight;lib.vmlOffsets(el);};img.attachEvent("onload",_1e);img.src=el.vmlBg;img.removeAttribute("width");img.removeAttribute("height");document.body.insertBefore(img,document.body.firstChild);}el.vml.image.fill.src=el.vmlBg;_1a=false;}el.vml.image.fill.on=!_1a;el.vml.image.fill.color="none";el.vml.color.shape.style.backgroundColor=_19.backgroundColor;el.runtimeStyle.backgroundImage="none";el.runtimeStyle.backgroundColor="transparent";},vmlOffsets:function(el){var _20,_21,_22,_23,bg,bgR,dC,_27,b,c,v;_20=el.currentStyle;_21={"W":el.clientWidth+1,"H":el.clientHeight+1,"w":this.imgSize[el.vmlBg].width,"h":this.imgSize[el.vmlBg].height,"L":el.offsetLeft,"T":el.offsetTop,"bLW":el.clientLeft,"bTW":el.clientTop};_22=(_21.L+_21.bLW==1)?1:0;_23=function(vml,l,t,w,h,o){vml.coordsize=w+","+h;vml.coordorigin=o+","+o;vml.path="m0,0l"+w+",0l"+w+","+h+"l0,"+h+" xe";vml.style.width=w+"px";vml.style.height=h+"px";vml.style.left=l+"px";vml.style.top=t+"px";};_23(el.vml.color.shape,(_21.L+(el.isImg?0:_21.bLW)),(_21.T+(el.isImg?0:_21.bTW)),(_21.W-1),(_21.H-1),0);_23(el.vml.image.shape,(_21.L+_21.bLW),(_21.T+_21.bTW),(_21.W),(_21.H),1);bg={"X":0,"Y":0};if(el.isImg){bg.X=parseInt(_20.paddingLeft,10)+1;bg.Y=parseInt(_20.paddingTop,10)+1;}else{for(b in bg){if(bg.hasOwnProperty(b)){this.figurePercentage(bg,_21,b,_20["backgroundPosition"+b]);}}}el.vml.image.fill.position=(bg.X/_21.W)+","+(bg.Y/_21.H);bgR=_20.backgroundRepeat;dC={"T":1,"R":_21.W+_22,"B":_21.H,"L":1+_22};_27={"X":{"b1":"L","b2":"R","d":"W"},"Y":{"b1":"T","b2":"B","d":"H"}};if(bgR!="repeat"||el.isImg){c={"T":(bg.Y),"R":(bg.X+_21.w),"B":(bg.Y+_21.h),"L":(bg.X)};if(bgR.search("repeat-")!=-1){v=bgR.split("repeat-")[1].toUpperCase();c[_27[v].b1]=1;c[_27[v].b2]=_21[_27[v].d];}if(c.B>_21.H){c.B=_21.H;}el.vml.image.shape.style.clip="rect("+c.T+"px "+(c.R+_22)+"px "+c.B+"px "+(c.L+_22)+"px)";}else{el.vml.image.shape.style.clip="rect("+dC.T+"px "+dC.R+"px "+dC.B+"px "+dC.L+"px)";}},figurePercentage:function(bg,_32,_33,_34){var _35,_36;_36=true;_35=(_33=="X");switch(_34){case "left":case "top":bg[_33]=0;break;case "center":bg[_33]=0.5;break;case "right":case "bottom":bg[_33]=1;break;default:if(_34.search("%")!=-1){bg[_33]=parseInt(_34,10)/100;}else{_36=false;}}bg[_33]=Math.ceil(_36?((_32[_35?"W":"H"]*bg[_33])-(_32[_35?"w":"h"]*bg[_33])):parseInt(_34,10));if(bg[_33]%2===0){bg[_33]++;}return bg[_33];},fixPng:function(el){el.style.behavior="none";var lib,els,_3a,v,e;if(el.nodeName=="BODY"||el.nodeName=="TD"||el.nodeName=="TR"){return;}el.isImg=false;if(el.nodeName=="IMG"){if(el.src.toLowerCase().search(/\.png$/)!=-1){el.isImg=true;el.style.visibility="hidden";}else{return;}}else{if(el.currentStyle.backgroundImage.toLowerCase().search(".png")==-1){return;}}lib=DD_belatedPNG;el.vml={color:{},image:{}};els={shape:{},fill:{}};for(v in el.vml){if(el.vml.hasOwnProperty(v)){for(e in els){if(els.hasOwnProperty(e)){_3a=lib.ns+":"+e;el.vml[v][e]=document.createElement(_3a);}}el.vml[v].shape.stroked=false;el.vml[v].shape.appendChild(el.vml[v].fill);el.parentNode.insertBefore(el.vml[v].shape,el);}}el.vml.image.shape.fillcolor="none";el.vml.image.fill.type="tile";el.vml.color.fill.on=false;lib.attachHandlers(el);lib.giveLayout(el);lib.giveLayout(el.offsetParent);el.vmlInitiated=true;lib.applyVML(el);}};try{document.execCommand("BackgroundImageCache",false,true);}catch(r){}DD_belatedPNG.createVmlNameSpace();DD_belatedPNG.createVmlStyleSheet();


PNG图片透明处理技术详解与实战 回望这些年,PNG从一个小众格式成长为Web图形的事实标准,靠的不只是“透明”这一项技能,更是它在无损压缩、跨平台兼容、扩展性强等方面的全面优势。尽管现在WebP、AVIF等新格式崛起,带来了更好的压缩率和更多功能,但在许多关键场景——比如图标、Logo、UI组件——PNG依然不可替代。因为它足够简单,足够稳定,足够可靠。下次当你随手插入一张透明PNG时,不妨想想:这片“看不见”的区域,其实是无数工程师用智慧和耐心搭建起来的技术奇迹 🌟🎯一句话总结。 阅读详情

相关推荐

IE浏览器无法显示PNG图片的完整解决方案

先别急着修bug,咱们得先搞清楚敌人是谁。PNG是一种无损压缩的位图图像格式,诞生于1995年,初衷是为了替代当时受专利限制的GIF格式。它的核心技术优势在于:无损压缩:使用DEFLATE算法,压缩后图像质量不变;支持Alpha通道:每个像素除了RGB三原色外,还带有一个0~255的透明度值,实现从完全透明到半透明的平滑过渡;支持真彩色与灰度:最高可达48位色彩深度,远超GIF的256色调色板;不支持动画。

weixin_35757531的博客 1360

xcode11beta版SwiftUI的画布无法展示

对SwiftUI怀有极大的好奇心,先是升级了Xcode11beta版,就迫不及待的创建了SwiftUI的工程,本以为会一切顺利,结果坑还是不有的,现总结如下: 1、创建SwiftUI后发现画布不展示(画布是swiftUI新的功能,即可以事实查看界面),ps:我当前的系统是莫哈维Mojave10.14.5。查看苹果官方文档后,发现SwiftUI需要将系统升级到10.15,而现在只有beta版的,o...

denggun12345的博客 2991

森林冰火人html源码,森林冰火人单人版(源码)

【实例简介】java小游戏——森林冰火人,单人游戏, 实现人物行走,跳跃,吃水晶,具有计时功能,积分功能,倒计时结束游戏失败。【实例截图】【核心代码】森林冰火人单人版├── bin│ ├── game│ │ ├── Help.class│ │ ├── Logon.class│ │ ├── Main.class│ │ ├── Mykey.class│ │ ...

weixin_42507981的博客 6196

使png 图片在网页上透明显示

比较gif 与png格式图片,使用png-8 实现网页图片透明效果。

cychai的专栏 5082

Creo报错代码-9?手把手教你重新生成许可证文件(基于Creo 10.0)

本文详细解析Creo报错代码-9的成因及解决方案,重点介绍如何重新生成许可证文件以应对网络环境变化导致的验证失败。通过分步指南和高级技巧,帮助用户有效管理多网络环境下的Creo许可证问题,提升工作效率。

weixin_30839881的博客 557

CREO5.0二次开发+VS2019配置详解

CREO5.0+VS2019配置更新 一、CREO5.0 配置 二、Visual Studio 2019配置 新建MFC DLL项目 文件>新建>项目,选择MFC DLL,如下图所示 项目名称CREO1 2、配置设置 打开项目属性: 配置资源管理器设置: 设置包含目录、库目录(根据自己CREO的安装位置来设置): 包含目录: 库目录: 预处理器设置: 把下面文字复...

liuyi2517的博客 1万+

解决IE6下的,不能显示透明PNG图片的问题

本人上网上找了很多方法,觉得此文章比较详细,所以记录下来。 1.用一个层显示,把要显示的PNG图片嵌入层中间(我解决这个问题是用的这第一种方法,O(∩_∩)O~) &lt;div style="width:100%; filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='图片 名.png',sizingMethod='i...

bk562bk 223

解锁Cherry Studio高阶玩法:用MCP实现自动化测试与数据爬取

本文深入探讨了如何利用MCP协议与Cherry Studio结合,实现自动化测试与数据爬取的高阶应用。通过Playwright等工具的MCP集成方案,详细解析了自动化测试流水线构建和智能爬虫系统开发的关键技术,显著提升工程效率和系统适应性。

defi6farmer的博客 275

关于PNG透明,IE6,PNG8,PNG24,PNG32

今天在写一段代码的时候,无意间发现,Fireworks导出的PNG24格式的透明图片竟然在IE7,FF下全部无效。当保存为PNG32的时 候,透明才有效。而用PS保存为PNG24的时候就是正常的。正当我不解的时候发现,PS导出的PNG24在Fireworks里打开竟然是 PNG32…..IE6不支持png24的透明,却可以很好的支持PNG8的索引透明。介绍一个IE6专用的...

190

C语言获取硬件信息(CPU序列号,硬盘序列号,网卡IP、MAC地址、是否插入网线)

本文主要介绍Linux和Windows下使用C语言获取各种硬件信息,包括CPU序列号、硬盘序列号、网卡信息(包括网卡名字、IP地址、MAC地址、网卡是否插入网线等)。

叶落花枯的博客 9378

大模型越狱指令数据集全解析:从AdvBench到HarmBench

本文全面解析了AdvBench、HarmBench等主流大模型越狱指令数据集。AdvBench作为基础测试集,用于快速评估模型安全基线;HarmBench则以其全面的文本、多模态及对抗性攻击评估,成为当前权威的深度安全审计工具。文章还介绍了MaliciousInstruct、JailbreakBench等特色数据集,并提供了根据实际场景选择与使用这些数据集的具体实战指南。

weixin_29327525的博客 617

png32在ie6中的透明化

关于png24与png32  原文:http://www.irideas.com/?m=201112 PNG图片格式现在包含三种类型: 1.PNG8 2.PNG24 3.PNG32 如果你经常使用Photoshop,那你这里就会问了:到底PNG32是个什么东西。基本上PNG32就是PNG24,但是附带了全alpha通道。就是说每个像素上不仅存储了24位真色彩信息还存储了8位的al

769

PrimeTime low power-多电压设计流程(2)

get_power_switches`、`get_supply_nets` 和 `get_supply_ports` 命令的操作方式类似,并具有类似的命令选项。PrimeTime 根据 UPF 命令构建电源供应网络,包括 create_power_domain、create_supply_net、create_supply_set、create_supply_port、set_domain_supply_net 和 connect_supply_net。电源集句柄是为电源域隐式创建的一个抽象电源集。

QRBQ 712

IE6——png图片的修复

1.在IE6中对图片格式png24支持度不高,如果使用的图片格式是png24,则会导致透明效果无法正常显示 2.解决方法: 1.可以使用png8来代替png24(直接利用ps修改图片格式;文件目录下的-存储为web所用格式),即可解决问题,但是使用png8代替png24以后,图片的清晰图会有所下降; 2.使用JavaScript来解决该问题,需要向页面中引入一个外部的JavaScript文件,然...

ld395353765的博客 712

100天精通Python(基础篇)——第1天:Python从起源到应用的全面解析(附上Python、PyCharm、VSCode下载安装详细教程)

100天精通Python(基础篇)——第1天:Python从起源到应用的全面解析(附上Python、PyCharm、VSCode下载安装详细教程)

努力让自己发光,对的人才能迎着光而来 101万+

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

ie6 png 图片背景透明解决方法

我本来以为 我对程序 的菜菜脑袋可能解决不了ie6 png图片的透明背景不兼容问题了,只能使用所谓的  在保存png 图片时,保存为文件更小,有gif 效果,被ie6支持的png8 索引色透明度格式 但是png8 支持的色彩位数实在是太低,很多时候直接处理的图片保存出来不是有锯齿,就是有毛边,放在网页上一点都不平滑,真是令人抓狂。 png24 png32 虽然支持了更多的色彩位数,但是ps 的

zyjia_study的专栏 876

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

ie8下jquery改变PNG的opacity出现黑边,ie6下png透明解决办法

目前互联网对于网页效果要求越来越高,不可避免的用到PNG图片,PNG分为几种格 式,PNG8 PNG24 PNG32,其中最常用的,也是显示效果和大小比较适中的则是PNG24,支持半透明,透明,颜色也...

u011927449的博客 196

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

IE6常见问题及解决方案

本文列举13条常见IE6的问题并尝试给出解决方案及代码,希望对大家能有所帮助~

hxy771503的博客 1749

png-24在ie6中的几种透明方法

下面介绍几种常用的解决办法: dd_belatedpng.js法 引入js文件 <!--[ifIE6]> <scripttype="text/javascript"src="js/dd_belatedpng.js"></script> <script> DD_belatedPNG.fix('.pngfix')...

amkokq884222的博客 197

PNG32 透明问题(1)

<br /> <br />一.  索引透明,布尔透明,alpha透明<br />索引透明:fireworks中可以选择某一颜色作为透明输出;<br />布尔透明:只能为不透明或全透明;<br />alpha透明:有不透明,全透明和半透明。<br />二.  PNG8, PNG24, PNG32<br />现在都提倡用PNG8,好处就不用多说了.但是fireworks和photoshop导出的PNG图片却有一些不同。<br />1.  fireworks<br />(1. 可以导出布尔透明,alpha透明的P

liufei_learning--脚踏实地,戒骄戒躁! 1483

IE6下使用24位PNG图片的解决方案(上)

24位PNG图的优势大家应该知道:它可以保存透明通道,可以实现优秀的透明渐变等效果。但是,IE6却不支持(可恶啊,怎么还不退役),下面我们就来一步步解决IE6这个bug 首先了解一下IE浏览器的条件注释,这对之后标准浏览器下不需要执行我们这个特殊的PNG透明是有用的 。 什么是条件注释 <!--[if XXX]> 这里是正常的html代码 <![endif]-...

ailixu3063的博客 217

_ie6png图片的修复

1.在IE6中对图片格式png24支持度不高,如果使用的图片格式是png24,则会导致透明效果无法正常显示 2.解决方法: 1.可以使用png8来代替png24,即可解决问题,但是使用png8代替png24以后,图片的清晰图会有所下降 2.使用JavaScript来解决该问题,需要向页面中引入一个外部的JavaScript文件,然后在写一下简单的JS代码,来处理该问题 3. 在body标签的最后引...

weixin_43152725的博客 358

解决png24格式图片在ie6中透明问题,

图片透明,锯齿问题是重构人员很头疼的问题,每当遇到这样的问题都让我感觉到不知道从哪入手,虽然能解决这些问题,但是总感觉多少有点缺点,最近遇到这方面的问题,总结了几种实现一些透明小图标的锯齿问题:png8格式的透明背景图片,会让浏览器在先显示的过程中图片边缘会有一些锯齿情况,png24可以解决这些锯齿问题,但是ie6不支持png24透明,不过利用ie6的hack问题有两种解决的办法:

前端岚枫 1999

ie6中png格式图片修复

在IE6中对图片格式png24支持度不高, 如果使用的图片格式是png24,则会导致透明效果无法正常显示。 解决方法: 1.可以使用png8来代替png24,即可解决问题, 但是使用png8代替png24以后,图片的清晰图会有所下降 ; 2.使用JavaScript来解决该问题,需要向页面中引入一个外部的JavaScript文件然后在写一下简单的JS代码,来处理该问题; 处理png图片的代...

weixin_43269800的博客 277

针对LOGO的半透明图片的显示

向往常一样插入图片,然后用IE的特有属性_display:none;将图片隐藏,但在其它浏览器就隐藏不了,然后用IE的滤镜在一个事先准备好的span里面插入PNG24图片。 针对LOGO的半透明图片的显示 #logo{width:400px;height:313px;position:relative;float:left;} #logo img{margin:27p

Arther90的专栏 1669
上一篇: CSS优先级或特殊性 总结归纳
下一篇: CSS div水平垂直居中和div置于底部
sykent
博客等级 码龄15年 28粉丝 16原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值