大家可能注意到了,网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAQMAAADaX5RTAAAAA3NCSVQICAjb4U/gAAAABlBMVEX///+ZmZmOUEqyAAAAAnRSTlMA/1uRIrUAAAAJcEhZcwAACusAAArrAYKLDVoAAAAWdEVYdENyZWF0aW9uIFRpbWUAMDkvMjAvMTIGkKG+AAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAAB1JREFUCJljONjA8LiBoZyBwY6BQQZMAtlAkYMNAF1fBs/zPvcnAAAAAElFTkSuQmCC

那么这是什么呢?这是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://mail.163.com/images/x.png" />

也可以这样显示:
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAJAQMAAADaX5RTAAAAA3NCSVQICAjb4U/gAAAABlBMVEX///+ZmZmOUEqyAAAAAnRSTlMA/1uRIrUAAAAJcEhZcwAACusAAArrAYKLDVoAAAAWdEVYdENyZWF0aW9uIFRpbWUAMDkvMjAvMTIGkKG+AAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAAB1JREFUCJljONjA8LiBoZyBwY6BQQZMAtlAkYMNAF1fBs/zPvcnAAAAAElFTkSuQmCC" />

把图像文件的内容直接写在了HTML 文件中,这样做的好处是,节省了一个HTTP 请求。坏处是浏览器不会缓存这种图像。

转载于:https://www.cnblogs.com/cncz/p/4048154.html

data:image/png;base64相关推荐

  1. 编码 data:text/html;c,关于 Data URI Scheme -- data:image/jpg;base64

    转载一篇大神的文章 大家可能注意到了,网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如: data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqA ...

  2. 通过data:image/png;base64把图片直接写在src里

    2019独角兽企业重金招聘Python工程师标准>>> 关于用base64存储图片 网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如:data:image/pn ...

  3. dataimagepng php_浅析data:image/png;base64的应用

    协议://主机名[:端口]/ 路径/[:参数] [?查询]#Fragmentprotocol :// hostname[:port] / path / [:parameters][?query]#fr ...

  4. 浅析data:image/png;base64的应用

    前言 偶尔加入一个网安群的时候,入群题目是这个: data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANwAAAAoCAIAAAAaOwPZAAAAAXNSR ...

  5. dataimagepng php_PHP decode data:image/png;base64

    请大大求解.... 我用file_get_contents() return 以下图 ,请问有什么办法变成data:image/png;base64 图片? 如果我直接用browser直接输入那个ur ...

  6. 微信开发之data:image/png;base64,

    先看一段代码: <img src="data:image/jpg;base64,iVBORw0KGGoAAAANSUhEUgAAAKAAAAAwCAMAAAChd4FcAAAAA3NC ...

  7. Bootstrap data类型的Url格式--url(data:image/gif;base64,AAAA):把小数据直接嵌入到Url中

    原文链接http://shiyun1013.blog.163.com/blog/static/1077403620111113234714/ 所谓"data"类型的Url格式,是在 ...

  8. Css中路径data:image/png;base64的用法详解 (转载)

    大家可能注意到了,网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如: background-image:url(data:image/png;base64, iVBORw0KGg ...

  9. 网页中遇到的src=quot;data:image/png;base64,xxxxquot;知识点了解

    在学爬虫中,总是习惯去找网上图片的url,但是你一定会遇到我题目说说的问题.网页上有些图片的src或css背景图片的url后面跟了一大串字符,比如: data:image/png;base64,/9j ...

最新文章

  1. Python 字典中get() 函数
  2. python axis 0_Python之NumPy(axis=0/1/2...)的透彻理解
  3. zabbix加vm虚拟服务器,zabbix监控vmware exsi主机的图文步骤
  4. spring中的单例和多例
  5. [TODO]com.alibaba.dubbo.rpc.RpcException: Failed to invoke the method
  6. 高德地图画带箭头的线_模具装配图画成这样,那才真的叫标准!
  7. 函数声明优先级高于变量赋值
  8. STM32工作笔记0039---认识电路图中的DS203,MS,L等
  9. Office编程中得到extend对象
  10. Bailian4099 队列和栈【堆栈+队列】
  11. SecureCRT背景颜色设置
  12. 【STM32H7的DSP教程】第4章 Matlab简易使用之脚本文件
  13. python timepicker_基于react开发的时间选择组件(TimePicker)
  14. winscp如何连接安卓手机_使用WinSCP远程连接虚拟机
  15. javascript全笔记-基础版(尚硅谷视频李立超老师)
  16. 计算机电子预览室配置清单,[计算机]多功能学术报告厅环境系统设备参考配置清单表.docx...
  17. L1-5 试试手气分数 15 Java版本
  18. cocos creator简单实现打字机效果
  19. sklearn中的make_moons函数使用
  20. 用 Python 写了一个学生在线考试管理系统

热门文章

  1. java 标识符_java标识符是什么
  2. python读取大文件内存不够_大型CSV文件(numpy)上的Python内存不足
  3. flask与js交互的示例代码_Frida Java Hook 详解(安卓9):代码及示例(上)
  4. java极光推送ios设置通知标题,iOS_极光推送的UNNotificationServiceExtension实现富文本...
  5. Java虚拟机专题之类加载机制
  6. KafkaController介绍
  7. (73)信号发生器DDS三角波设计(一)(第15天)
  8. 【其他】编程技巧之常用缩写
  9. 【实验2】——模糊函数
  10. Linux内核分析 - 网络[十]:ARP杂谈