首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > CSS >

兼容ie6跟ie7 的16进制码流在html中显示为图片代码(base64)

2012-11-10 
兼容ie6和ie7 的16进制码流在html中显示为图片代码(base64)新的浏览器(ff3、ie8、chrome)img标签支持,如: i

兼容ie6和ie7 的16进制码流在html中显示为图片代码(base64)

新的浏览器(ff3、ie8、chrome)img标签支持,如: <img src="data:image/png;base64,
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD/
//+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4U
g9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC"/>的格式,可以指定编码

这个帖子楼主已经结了,但解决方案并不理想,不支持ie6、ie7而使用这个两个版本的浏览器用户量不小。

我们知道ie可以将html打包保存为一个mht文件,这个文件包括了脚本和图片,用记事本打开,里面就是采用base64编码的文本
如:

Assembly code
------=_NextPart_000_0000_01CA69C7.3AF566D0Content-Type: image/gifContent-Transfer-Encoding: base64Content-Location: http://xxx.com/blank.gifR0lGODlhAQABAIAAAAAAAAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==


用ie打开该页面,查看 <img> src为“mhtml:file://x:/xxx/xxx.mht!http://xxx.com/blank.gif”

ie采用了mhtml协议,访问该资源

那另一条路就这样被发现了!

测试的步骤
1、将file改成http是否成功?
2、将mht扩展名改名为html是否成功?
3、将base64字符放在 <!---->注释区是否成功?
4、合并,多个浏览器测试是否成功?

感谢ccav,一切顺利
最终源代码(logo太大,换成小图):

?


<!--
------=_NextPart_000_0000_01CA9F59.AFB45FE0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.my400800.cn/logo.gif

iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD/
//+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4U
g9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC!
-->
<img src="data:image/gif;base64,
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAABlBMVEUAAAD/
//+l2Z/dAAAAM0lEQVR4nGP4/5/h/1+G/58ZDrAz3D/McH8yw83NDDeNGe4U
g9C9zwz3gVLMDA/A6P9/AFGGFyjOXZtQAAAAAElFTkSuQmCC
" onerror="src="mhtml:http://www.my400800.cn!http://www.my400800.cn/logo.gif';"/>

1 楼 Ayou2008 2011-07-21   lz完整的代码有没有啊,我试了半天了,都没能成功。 2 楼 softor 2011-10-19   看的不大明白,没弄好~ 3 楼 yingjun055 2011-10-27   楼主什么意思呀?我想在IE6下实现这个功能怎么办的呢? 4 楼 softor 2011-11-30   说清楚点嘛!

热点排行