原帖:如何将16进制码流在html中显示为图片 新的浏览器(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编码的文本 如:
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> ------=_NextPart_000_0000_01CA69C7.3AF566D0 Content- Type: image/gif Content-Transfer- Encoding: base64 Content- Location: http: //xxx.com/blank.gif R0lGODlhAQABAIAAAAAAAAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==用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,一切顺利 效果页:http://renrousousuo.com/scripts/csdn_logo.html 这贴应该多散点分。
最终源代码(logo太大,换成小图):
------=_NextPart_000_0000_01CA9F59.AFB45FE0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: 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:' + document.location.href + '/scripts/csdn_logo.html!logo.gif';" /> 相关资源:微信小程序源码-合集1.rar