php %3ch1%3e字体,Data URIs - [ HTTP 中文开发手册 ] - 在线原生手册 - php中文网

数据 URL,以该模式data:为前缀的 URL,允许内容创建者将小文件嵌入文档中。

注意:现代浏览器将数据 URL 视为唯一不透明的起源,而不是继承设置对象的原点

负责导航。

语法

数据 URL 由四部分组成:前缀(data:),指示数据类型的 MIME 类型,非文本形式的可选base64标记以及数据本身:

data:[][;base64],

mediatype是一个 MIME 类型的字符串,例如'image/jpeg'用于 JPEG 图像文件。如果省略,则默认为text/plain;charset=US-ASCII

如果数据是文本的,则可以简单地嵌入文本(使用适当的实体或基于封闭文档类型的转义符)。否则,您可以指定base64嵌入 base64 编码的二进制数据。

几个示例:

data:,Hello%2C%20World!简单的纯文本/数据data:text/plain;base64,SGVsbG8sIFdvcmxkIQ%3D%3D的 base64 编码版本,上面data:text/html,%3Ch1%3EHello%2C%20World!%3C%2Fh1%3E有一个 HTML 文件

Hello, World!

data:text/html,执行 JavaScript 警告的 HTML 文档。请注意,关闭脚本标记是必需的。

将数据编码为 base64 格式

这可以通过Linux和Mac OS X系统上的命令行uuencode实用程序轻松完成:

uuencode -m infile remotename

infile参数是要编码为 Base64 格式的文件名,remotename是不实际使用的远程名称data网址的文件。

输出结果如下所示:

begin-base64 664 test

YSBzbGlnaHRseSBsb25nZXIgdGVzdCBmb3IgdGV2ZXIK====

数据 URL 将使用初始标题行之后的编码数据。

在网页中使用 JavaScript

Web API 有基本的编码或解码到 base64:Base64 编码和解码。

常见问题

本节介绍创建和使用data网址时常见的问题。

语法data网址的格式非常简单,但很容易忘记在“数据”段之前放置逗号,或者错误地将数据编码为 base64 格式。在 HTMLA data网址中的格式在文件中提供了一个文件,该文件可能非常有用宽度相对于封闭文档的宽度。作为一个 URL,data应该可以用空格(换行符,制表符或空格)来形成,但是在使用 base64编码时会出现实际问题。延长限制尽管 Firefox 支持的data网址长度基本上没有限制,但浏览器不需要支持任何特定的最大值数据的长度。例如,Opera 11 浏览器限制 URL 长度为65535个字符data网址为65529个字符(65529个字符是编码数据的长度,而不是源,如果使用清楚地 data:,不指定 MIME 类型)。缺少错误处理媒体中的参数无效或指定'base64'时出现拼写错误,但忽略错误提供。不支持查询字符串等。

数据 URL 的数据部分是不透明的,所以试图在数据 URL 中使用查询字符串(包含?parameter-data语法的页面特定参数)将包含查询字符串到 URL 所代表的数据中。例如:

data:text/html,lots of text...

bottom?arg=val

这代表一个 HTML 资源,其内容是:

lots of text...

bottom?arg=val

规范

规范标题RFC 2397“数据”URL方案

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafariBasic Support(Yes)121(Yes)827.20(Yes)

CSS files(Yes)121(Yes)82 917.20(Yes)

HTML files?No?No??

JavaScript files(Yes)121(Yes)917.20(Yes)

FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS SafariBasic Support(Yes)(Yes)(Yes)1(Yes)(Yes)1(Yes)(Yes)

CSS files(Yes)(Yes)(Yes)1(Yes)(Yes)1(Yes)(Yes)

HTML files??No?No??

JavaScript files(Yes)(Yes)(Yes)1(Yes)(Yes)1(Yes)(Yes)

1. 最大支持的大小是4GB

2. 最大支持的大小是32kB

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值