我最近在网站上遇到过网站的资产(徽标,资源图片)如下所示:
background: url("data:image/gif;base64,R0lGODlhbAAbAMQAADRNU////8PAvwCq3KunpYeCf+fm5RSGp3BpZgDW7tvZ2WRdWaCbmVhQTRSltPPy8re0sszMzHt1cgDs9xTBwJOOjBCNsgC/5TRZWBDOzd7e1vf39xCduYiCgEA3MwAAACH5BAEHAB4ALAAAAABsABsAAAX/oCeKDaEEaGBA0ui+cCzPdG3fM5HuqYHgQBtvNAzCeClZ44REdozQV9EzjVKbMl2zubBGp9UvFtZAKgiQCBLihYJ37SsyxuD9RgheJB58J9tbMWopbC55O3t8gHCKYSKDKAwvDQ87kopejlaakCoNLwsGKASYi398mlo9LUANDBGVKixHcx4VTAoMn3IoRFsBChW7SgSivzELTQbCNqpIBqwiTUtr0oy8Ww9PMc7HMQK /AndkTL8B29go5UV+5gGXLhDup5PrSBHjI90BEcY7u /N6WDsVEAU6D3UK0tjHg9SIMjsI7JLQ0EWTfpYG9tLo7sEuSgUD1Ggg71chD84E/7igiMgijwoeGoBb5ovgtQYSOr0TUYGHAgldON5oUMGfHRHrhnlgSchlCngx2ol8YdTAox0epVy7saDkDpW8FMBYl0+T043YYCT8EwvFyZpoXWhRcFAEgrYbW05KEyGaUBpSYRz6wwPqXxdrgcXowC6FWCBm4U5N+6Ino4paUTwYq2nwxnVBb0Q+7MirCqQ7HjtVoJTjZBeW/zhjjWM05dsiku0oZDqA3ytZMVDIQAGDB6P8JOxakDgAWM8BHhDIJ8N24BEd8Aa4wxgrM2ukMEwYPx5D83nodHpLt5X95JBgRSBv8sNBgvv3HVArmIiE9kCutQege0hkNQJTv/zAwV8FDDLIQUzqNUGbC6HMI1kYAwb0QGgjxLbFDwcMIKKIB4xQwHwRKdFbLQS+5t6F97SG3X9PeQDAiCIC8IIEBEBigADfzUCUACjCSM+LAWomQF1kVIAREjABcIAFB+gYAgA7") no-repeat scroll 0 0 transparent;
这怎么可能?以及我们如何在我们的网站上进行此类编码?
修改
我不是很擅长这一点,如果有可能请帮助多一点来得到答案,我编码我的图片得到的代码太长了大约2页现在我已经在css中添加了但是没有成功! (顺便说一下,这有助于提高绩效吗?)
答案 0 :(得分:0)
如上所述,它不是加密而是编码;基本上它与您通常在外部嵌入到CSS中引用的资源相同。您可以尝试自己制作或使用one of the numerous tools available online; wiki article也非常彻底。
虽然它不提供任何内容保护(即任何人仍然可以保存文件),但如果使用正确,它确实提供了一些好处。主要是http请求较少 - 而不是请求每个单独的图像资源,它们已经全部下载!只是不要将所有您网站的图形转储到css文件中,而是坚持使用几乎每个页面上使用的元素。
IMO,另一个好处是更容易的资源管理。而不是精简小图标,你有效地操作单个图形文件(没有背景流血工件等) - 但你没有受到严重的文件大小开销的惩罚(建议在启用gzip时低至3%)。
基本上所有浏览器,但IE7在某种程度上支持该方法。内容类型/大小有一些进一步的限制(例如IE8最大32kb)
答案 1 :(得分:-1)
图像源仅使用BASE-64进行编码。它更快。如果你想解码这个用途,例如http://www.motobit.com/util/base64-decoder-encoder.asp并选择导出到.bin
文件。比保存,将扩展名更改为.gif和瞧。 :)
正如我所写,它更快,但在我看来不太方便。