使用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.这类图片在网站中大规模使用

web开发中上传图片保存base64 好还是保存文件相关推荐

  1. 【笔记-node】《imooc-nodejs入门到企业web开发中的应用》

    目录 课程名 备注 入门必学 nodejs入门到企业web开发中的应用 框架与工具 node.js+koa2+mysql打造前后端分离精品项目<旧岛> 项目实战 20190317-2020 ...

  2. 详细阐述Web开发中的图片上传问题

    Web开发中,图片上传是一种极其常见的功能.但是呢,每次做上传,都花费了不少时间. 一个"小功能"花费我这么多时间,真心不愉快. So,要得认真分析下原因. 1.在最初学习Java ...

  3. web开发中的缓存问题的研究(一)

    web开发中的缓存问题的研究(一) web开发中的缓存问题的研究(二) web开发中的缓存问题的研究(三) 一般情况下,浏览器都会缓存已经访问过的页面内容,关于如何禁止浏览器缓存的介绍,在网上到处都有 ...

  4. Web开发中的用户角色权限设计总结

    在Web开发中关于权限管理设计大抵涉及到两个方面:一:功能方面权限设计:二:资源方面权限设计.二者比较来看,功能方面权限的可重用性更高. 1.关于权限: 按照角色权限的最简单的设计 名称 描述 用户 ...

  5. Web 开发中 Blob 与 FileAPI 使用简述

    本文节选自 Awesome CheatSheet/DOM CheatSheet,主要是对 DOM 操作中常见的 Blob.File API 相关概念进行简要描述. Web 开发中 Blob 与 Fil ...

  6. 第123天:移动web开发中的常见问题

    一.函数库 underscoreJS _.template: <ol class="carousel-indicators"><!--渲染的HTML字符串--&g ...

  7. java和Mysql数据一致性_java web开发中数据一致性的问题

    在java web开发中,数据存储介质有如下几种数据库(rdms,nosql) 缓存系统(redis,memcached,ehcache) java内部数据结构(map,list) 文件存储(fast ...

  8. WEB开发中合理选择图片格式

    从某种程度上说,判断一个网页设计师是否优秀,可以从其在WEB开发(或网页设计)中是否合理的采用各种图片格式得出结论.事实上,或许所有人都知道图片存在GIF,JPG和PNG等格式,但并非所有人都知道它们 ...

  9. Web开发中的图片管理:策略与实践

    前言 在Web开发中,图像是无法忽视的重要组成部分.然而,随着图片数量的增加和高清图像的普及,图片管理变得越来越复杂.在这篇文章中,我们将详细探讨Web开发中的图片管理策略和实践,包括图片优化.存储. ...

最新文章

  1. linux内网机器访问外网代理设置squid
  2. 指针数组、数组指针、数组的区别与联系
  3. flutter 组件IgnorePointer
  4. 2016 CCPC 杭州站 小结
  5. 利用反射机制创建新类的两种方式及比较
  6. 19linux关机重启20登录注销
  7. 大数据分析处理及挖掘技术
  8. 动手设计 CPU(二)—— 微程序控制的运算器
  9. NekoHtml 乱码出现问号的解决
  10. word里画的流程图怎么全选_流程图怎么做?用Word制作流程图超方便!
  11. git的版本回溯(git想要退回到之前写过的某一个版本)
  12. 金蝶k3wise 核算项目、辅助资料
  13. android禁用传感器,Android 系统强制禁用距离传感器方法
  14. 关于void show(int b),void show(int b)与void show(int* b)的区别的举例与注解
  15. 水滴筹赴美上市:以“善良”为名的生意经
  16. mongodb数据库优缺点分析(扫盲)
  17. MongoDB数据库增删改查基本使用
  18. 一年级计算机课ppt,一年级信息技术全部课程PPT课件.ppt
  19. 硕盟type c六合一拓展坞|苹果电脑转换器
  20. 传智播客网络营销系列课程-新媒体运营全集

热门文章

  1. 字符串首字母变大写(Java版)
  2. linux xen 管理,Linux Xen管理
  3. macOSBigSur11.3beta2更新了什么,一起来了解一下
  4. visual basic VB.NET实例系列教程第二节(好玩又有趣的龟兔赛跑程序)
  5. Bitmap位图结构
  6. Android内存管理机制官方详解文档
  7. windows server Active Directory 域控卸载操作
  8. CTF经典(前五道)
  9. Python--16. 精彩案例赏析
  10. 经典语句(实时更新):