大家可能注意到了,网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如:data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAYAAABIdFAMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHhJREFUeNo8zjsOxCAMBFB/ KEAUFFR0Cbng3nQPw68ArZdAlOZppPFIBhH5EAB8b+Tlt9MYQ6i1BuqFaq1CKSVcxZ2Acs6406KUgpt5/ LCKuVgz5BDCSb13ZO99ZOdcZGvt4mJjzMVKqcha68iIePB86GAiOv8CDADlIUQBs7MD3wAAAABJRU5ErkJggg%3D%3D。那么这是什么呢?这是Data URI scheme。
  Data URI scheme是在RFC2397中定义的,目的是将一些小的数据,直接嵌入到网页中,从而不用再从外部文件载入。比如上面那串字符,其实是一张小图片,将这些字符复制黏贴到火狐的地址栏中并转到,就能看到它了,一张1X36的白灰png图片。
  在上面的Data URI中,data表示取得数据的协定名称,image/png 是数据类型名称,base64 是数据的编码方法,逗号后面就是这个image/png文件base64编码后的数据。
  目前,Data URI scheme支持的类型有:
data:,文本数据
data:text/plain,文本数据
data:text/html,HTML代码
data:text/html;base64,base64编码的HTML代码
data:text/css,CSS代码
data:text/css;base64,base64编码的CSS代码
data:text/javascript,Javascript代码
data:text/javascript;base64,base64编码的Javascript代码
data:image/gif;base64,base64编码的gif图片数据
data:image/png;base64,base64编码的png图片数据
data:image/jpeg;base64,base64编码的jpeg图片数据
data:image/x-icon;base64,base64编码的icon图片数据
  base64简单地说,它把一些 8-bit 数据翻译成标准 ASCII 字符,网上有很多免费的base64 编码和解码的工具,在PHP中可以用函数base64_encode() 进行编码,如echo base64_encode(file_get_contents(‘wg.png’));
目前,IE8、Firfox、Chrome、Opera浏览器都支持这种小文件嵌入。

举个图片的例子:

网页中一张图片可以这样显示:

<img src=“http://www.letuknowit.com/images/wg.png”/>
也可以这样显示:
<img src=“data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAkCAYAAABIdFAMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHhJREFUeNo8zjsOxCAMBFB/KEAUFFR0Cbng3nQPw68ArZdAlOZppPFIBhH5EAB8b+Tlt9MYQ6i1BuqFaq1CKSVcxZ2Acs6406KUgpt5/LCKuVgz5BDCSb13ZO99ZOdcZGvt4mJjzMVKqcha68iIePB86GAiOv8CDADlIUQBs7MD3wAAAABJRU5ErkJggg%3D%3D”/>
  我们把图像文件的内容直接写在了HTML 文件中,这样做的好处是,节省了一个HTTP 请求。坏处呢,就是浏览器不会缓存这种图像。大家可以根据实际情况进行自由取舍。

html base64 img 图片显示相关推荐

  1. 微信小程序开发——base64位图片显示问题

    前言: 目前小程序项目需要后端借口提供验证码图片,后端是以base64位返回的,按照H5的做法,前边拼上 data:image/png;base64, 应该就可以了,关键代码如下: H5: <i ...

  2. base64存储图片/显示图片

    不知道大家有没有这样一个需求:发布一篇文章,文章内容中可能涉及到图片,那么显示文章时候,如何展示文章如发布一样(包括图片),csdn 的发布文章就是一个很好的例子,虽然我不知道csdn是如何实现的,但 ...

  3. php将上传的图片转为base64,html5实现把上传的图片转成base64编码在显示(代码实例)...

    本章给大家介绍html5实现把上传的图片转成base64编码在显示(代码实例).有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助. 首先我们来详细的看一看base64编码: 什么是bas ...

  4. java base64 转图片不现实_BASE64编码的图片在网页中的显示问题的解决

    1.为什么要用到BASE64编码的图片信息 Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一.Base64 主要不是加密,它主要的用途是把一些二进制数转成普通字符用于网络传输.由于一 ...

  5. openlayers +vue 实现聚合点text文字显示和base64图片显示

    openlayers +vue 实现聚合点text文字显示和base64图片显示 在业务中广泛是运用 所以在这里记录下 mapListdataS是接口中传过来的值 addMarker(mapListd ...

  6. Java踩坑笔记 —— base64转换为图片后图片显示不全

    Java踩坑笔记 -- base64转换为图片后图片显示不全 前言 解决思路 案例代码 结束语 前言 最近在开发项目中,发现base64转换图片时,出现了图片显示不全,例如如下这样 可以明显看到图片部 ...

  7. vue base64图片不显示_技巧 | word中插入的图片显示不完整怎么办?

    已经好久没有更新了,都快忘记有这个公众号存在了~ 这几个月发生了很多事情,工作上的任务也迟迟没有减轻,之前保持的日记也已经很久没有写了.但是觉得要是没有什么用什么方式将脑袋中时不时飘过的念头记录下来的 ...

  8. jsp 前台页面 img base64图片显示方法

    后天存储的base64的图片格式,前台页面展示: <img src= "data:image/png;base64,(base64位的数字)" alt="提示信息& ...

  9. vue js中解决二进制转图片显示问题

    一:问题 工作中碰到的问题,在处理接口返回的验证码图片时,由于返回的是encode编码代码,在js端获取到数据之后,通过函数encodeURI()来进行解码,之后可以通过在src中设置来实现图片显示: ...

最新文章

  1. 手机中的AR是怎么实现的
  2. struts2学习笔记之十一:struts2的类型转换器
  3. java 字符界面 curses_[C++]Linux之图形界面编程库[curses库]之入门教程
  4. (36)Verilog HDL关系运算:大于、小于、等于
  5. ldaptemplate 分页_UI设计干货分享:设计语言 - 侧边导航栏/分页
  6. iis7 64位 操作excel的一系列问题(未完待续)
  7. Bailian4141 砝码称重【DP】
  8. [转]vc++ release 版的生成
  9. 到底谁才是苹果公司实际控制人?
  10. 梵语和藏语_藏语与梵文的区别
  11. 前端第二天 表格/表单和H5
  12. Microchip PIC系列8位单片机入门教程(六)ADC
  13. 使用Ffmpeg获取视频编码格式
  14. memcached入门使用
  15. android推箱子实验报告,android开发——推箱子小游戏(前序)
  16. 2022CTFSHOW菜狗杯部分MISC(二)
  17. 网页设计语言html做思维导图,HTML思维导图
  18. grpc 源码阅读之 balancer
  19. 申万一级行业指数是什么?
  20. openGL es2.0 粒子系统之烟花

热门文章

  1. 前端学习从入门到高级全程记录之45 (ajax---1)
  2. 分享一个嗖嗖移动管理系统
  3. DCM4CHE解压缩的DICOM文件
  4. 几种swf格式视频转换器简介
  5. 1037: 四则运算 C语言
  6. 数学思维导图的作用是什么?如何绘制思维导图
  7. 100兆每秒传输不是12.5MB,别误人子弟了
  8. 半导体器件(三) 场效应管 FET
  9. GNU radio入门学习(2)GNU radio简介
  10. 微信小程序开店怎么做?