整理HTML5中支持的URL编码与字符编码


Posted in HTML / CSS onFebruary 23, 2016

URL 编码
URL 编码就是将 URLs 中不宜打印的字符或者具有特殊意义的字符转换为 Web 浏览器和服务器明白且普遍接受的表示法。 这些字符包括:

ASCII 控制字符 - 不宜打印的字符通常用于输出控制。字符范围是十六进制的 00-1F(十进制的 0-31)和 7F(十进制的 127)。下面提供了完整的编码表。

非 ASCII 控制字符 - 这些字符超出了 128 个 ASCII 字符集的范围。这个范围是 ISO-拉丁字符集的一部分以及包含整个十六进制的 ISO-拉丁字符集 00-FF (十进制的 128-255)的“前半部分”。下面提供了完整的编码表。

保留字符 - 诸如美元符号,和号,加号,通用符号,正斜杠,冒号,分好,等号,问号以及 “at”这类符号。所有这些符号在 URL 内都有不同的意义,因此需要编码。下面提供了完整的编码表。

不安全字符 - 包括空格,问号,小于符号,大于符号,磅字符,百分比符号,大括号左边部分,大括号右边部分,管道符,反斜杠,插入符号,波浪线。左方括号,右方括号,沉音符。出于某些原因,这些字符出现在 URLs 中存在被误解的可能性。这些字符也应该始终被编码。下面提供了完整的编码表。
编码表示法需要三个字符替换期望的字符:一个百分号,两个在 ASCII 字符集中表示字符位置的十六进制数字、

示例
最常见的特殊字符之一便是空格。我们不能在 URL 中直接输入一个空格。空格在字符集中就是十六进制的 20。因此请求服务器时可以使用 %20 表示空格。

复制代码
代码如下:
http://www.example.com/new%20pricing.html

这个 URL 实际上是从 www.example.com 检索一个名为 new pricing.html 的文档。

ASCII 控制字符编码
包括十六进制的 00-1F(十进制的 0-31)和 7F(十进制的 127)字符码。

十进制格式 十六进制值 字符 URL 编码
0 00 %00
1 01 %01
2 02 %02
3 03 %03
4 04 %04
5 05 %05
6 06 %06
7 07 %07
8 08 退格符 %08
9 09 tab %09
10 0a 换行符 %0a
11 0b %0b
12 0c %0c
13 0d 回车符 %0d
14 0e %0e
15 0f %0f
16 10 %10
17 11 %11
18 12 %12
19 13 %13
20 14 %14
21 15 %15
22 16 %16
23 17 %17
24 18 %18
25 19 %19
26 1a %1a
27 1b %1b
28 1c %1c
29 1d %1d
30 1e %1e
31 1f %1f
127 7f %7f

非 ASCII 控制字符编码
包括整个十六进制的 ISO-拉丁字符集 80-FF(十进制的 128-255)编码的“前半部分”。
十进制格式 十六进制值 字符 URL 编码
128 80 %80
129 81 ? %81
130 82 ? %82
131 83 ? %83
132 84 ? %84
133 85 %85
134 86 ? %86
135 87 ? %87
136 88 ? %88
137 89 %89
138 8a ? %8a
139 8b ? %8b
140 8c ? %8c
141 8d ? %8d
142 8e ? %8e
143 8f ? %8f
144 90 ? %90
145 91 %91
146 92 %92
147 93 %93
148 94 %94
149 95 ? %95
150 96 %96
151 97 %97
152 98 ? %98
153 99 ? %99
154 9a ? %9a
155 9b ? %9b
156 9c ? %9c
157 9d ? %9d
158 9e ? %9e
159 9f ? %9f
160 a0 %a0
161 a1 ? %a1
162 a2 %a2
163 a3 %a3
164 a4 ¤ %a4
165 a5 %a5
166 a6 | %a6
167 a7 § %a7
168 a8 ¨ %a8
169 a9 ? %a9
170 aa a %aa
171 ab ? %ab
172 ac ? %ac
173 ad - %ad
174 ae ? %ae
175 af ˉ %af
176 b0 ° %b0
177 b1 ± %b1
178 b2 2 %b2
179 b3 3 %b3
180 b4 %b4
181 b5 μ %b5
182 b6 ? %b6
183 b7 · %b7
184 b8 ? %b8
185 b9 1 %b9
186 ba o %ba
187 bb ? %bb
188 bc ? %bc
189 bd ? %bd
190 be ? %be
191 bf ? %bf
192 c0 à %c0
193 c1 á %c1
194 c2 ? %c2
195 c3 ? %c3
196 c4 ? %c4
197 c5 ? %c5
198 c6 ? %v6
199 c7 ? %c7
200 c8 è %c8
201 c9 é %c9
202 ca ê %ca
203 cb ? %cb
204 cc ì %cc
205 cd í %cd
206 ce ? %ce
207 cf ? %cf
208 d0 D %d0
209 d1 ? %d1
210 d2 ò %d2
211 d3 ó %d3
212 d4 ? %d4
213 d5 ? %d5
214 d6 ? %d6
215 d7 × %d7
216 d8 ? %d8
217 d9 ù %d9
218 da ú %da
219 db ? %db
220 dc ü %dc
221 dd Y %dd
222 de T %de
223 df ? %df
224 e0 à %e0
225 e1 á %e1
226 e2 a %e2
227 e3 ? %e3
228 e4 ? %e4
229 e5 ? %e5
230 e6 ? %e6
231 e7 ? %e7
232 e8 è %e8
233 e9 é %e9
234 ea ê %ea
235 eb ? %eb
236 ec ì %ec
237 ed í %ed
238 ee ? %ee
239 ef ? %ef
240 f0 e %f0
241 f1 ? %f1
242 f2 ò %f2
243 f3 ó %f3
244 f4 ? %f4
245 f5 ? %f5
246 f6 ? %f6
247 f7 ÷ %f7
248 f8 ? %f8
249 f9 ù %f9
250 fa ú %fa
251 fb ? %fb
252 fc ü %fc
253 fd y %fd
254 fe t %fe
255 ff ? %ff

保留字符编码
下表用于编码保留字符。
十进制格式 十六进制值 字符 URL 编码
36 24 $ %24
38 26 & %26
43 2b + %2b
44 2c , %2c
47 2f / %2f
58 3a : %3a
59 3b ; %3b
61 3d = %3d
63 3f ? %3f
64 40 @ %40

不安全字符编码
下表用于编码不安全字符。
十进制格式 十六进制值 字符 URL 编码
32 20 space %20
34 22 " %22
60 3c %3c
62 3e > %3e
35 23 # %23
37 25 % %25
123 7b { %7b
125 7d } %7d
124 7c | %7c
92 5c \ %5c
94 5e ^ %5e
126 7e ~ %7e
91 5b [ %5b
93 5d ] %5d
96 60 ` %60

字符编码

字符编码就是将字节转换为字符的一种方法。要验证或者显示一个 HTML 文档,程序必须选择一个字符编码。HTML5 作者有三种方式设置字符编码:

HTTP Content-Type 头:
如果你在编写 cgi 程序或者类似的程序,那么可以使用 HTTP Content-Type 头设置任意字符编码:

下面是一个简单的例子:

XML/HTML Code复制内容到剪贴板
  1. print "Content-Type: text/html; charset=utf-8\r\n";  

<meta> 元素:
可以使用带有 charset 属性的 <meta> 元素指定 HTML5 文档前 512 个字节的编码:

下面是简化的例子:

XML/HTML Code复制内容到剪贴板
  1. <meta charset="UTF-8">  

尽管这种语法是被允许的,但上述语法需要使用 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 替换。

Unicode 字节顺序标记(BOM)
一个字节顺序标记(BOM)由数据流开头的 U+FEFF 字符码组成,它可以用作定义字节顺序和编码形式的签名,主要是未标记的明文文件。

许多 Windows 程序(包括 Windows 记事本)都会在保存为 UTF-8 的任意文档开头添加 0xEF, 0xBB, 0xBF。这就是 Unicode 字节顺序标记(BOM)的 UTF-8 编码,通常被称为 UTF-8 BOM,尽管它和字节顺序没有关系。

对于 HTML5 文档,我们可以在文件的开头使用 Unicode 字节顺序标记(BOM)字符。这个字符为使用的编码提供了签名。

HTML / CSS 相关文章推荐
纯CSS3实现给头像加个光芒四射且旋转的背景动画效果
May 07 HTML / CSS
浅谈CSS3 box-sizing 属性 有趣的盒模型
Apr 02 HTML / CSS
CSS3实现莲花绽放的动画效果
Nov 06 HTML / CSS
详解利用canvas实现环形进度条的方法
Jun 12 HTML / CSS
HTML5 绘制图像(上)之:关于canvas元素引领下一代web页面的问题
Apr 24 HTML / CSS
html5的canvas元素使用方法介绍(画矩形、画折线、圆形)
Apr 14 HTML / CSS
使用HTML5的表单验证的简单示例
Sep 09 HTML / CSS
很酷的HTML5电子书翻页动画特效
Feb 25 HTML / CSS
html5超简单的localStorage实现记住密码的功能实现
Sep 07 HTML / CSS
详解如何在登录过期后跳出Ifram框架
Sep 10 HTML / CSS
CSS中实现动画效果-附案例
Feb 28 HTML / CSS
什么是clearfix (一文搞清楚css清除浮动clearfix)
May 21 HTML / CSS
使用HTML5在网页中嵌入音频和视频播放的基本方法
Feb 22 #HTML / CSS
浅析HTML5的WebSocket与服务器推送事件
Feb 19 #HTML / CSS
解析HTML5的存储功能和web SQL的相关操作方法
Feb 19 #HTML / CSS
在HTML5中使用MathML数学公式的简单讲解
Feb 19 #HTML / CSS
使用HTML5进行SVG矢量图形绘制的入门教程
Feb 19 #HTML / CSS
整理HTML5中表单的常用属性及新属性
Feb 19 #HTML / CSS
浅谈基于HTML5的在线视频播放方案
Feb 18 #HTML / CSS
You might like
php根据日期显示所在星座的方法
2015/07/13 PHP
yii2-GridView在开发中常用的功能及技巧总结
2017/01/07 PHP
JavaScript 给汉字排序实例代码
2008/06/28 Javascript
javascript 面向对象思想 附源码
2009/07/07 Javascript
基于jquery的防止大图片撑破页面的实现代码(立即缩放)
2011/10/24 Javascript
通过正则格式化url查询字符串实现代码
2012/12/28 Javascript
jquery索引在使用中的一些困惑
2013/10/24 Javascript
js分页代码分享
2014/04/28 Javascript
Windows系统中安装nodejs图文教程
2015/02/28 NodeJs
javascript解决IE6下hover问题的方法
2015/07/28 Javascript
基于jQuery实现的仿百度首页滑动选项卡效果代码
2015/11/16 Javascript
js事件委托和事件代理案例分享
2017/07/25 Javascript
js实时监控文本框输入字数的实例代码
2018/01/18 Javascript
Angular2进阶之如何避免Dom误区
2018/04/02 Javascript
浅入深出Vue之组件使用
2019/07/11 Javascript
vue实现手机端省市区区域选择
2019/09/27 Javascript
Vue 路由间跳转和新开窗口的方式(query、params)
2019/12/25 Javascript
详解React中共享组件逻辑的三种方式
2021/02/02 Javascript
Python序列之list和tuple常用方法以及注意事项
2015/01/09 Python
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
python判断变量是否为int、字符串、列表、元组、字典的方法详解
2020/02/13 Python
python 成功引入包但无法正常调用的解决
2020/03/09 Python
Django+Celery实现动态配置定时任务的方法示例
2020/05/26 Python
django ObjectDoesNotExist 和 DoesNotExist的用法
2020/07/09 Python
HTML5之SVG 2D入门8—文档结构及相关元素总结
2013/01/30 HTML / CSS
荷兰皇家航空公司官方网站:KLM Royal Dutch Airlines
2017/12/07 全球购物
雅虎笔试题(字符串操作)
2015/03/24 面试题
英语师范专业毕业生自荐信
2013/09/21 职场文书
实习生自荐信范文
2013/11/13 职场文书
校本教研工作制度
2014/01/22 职场文书
大学生个人先进事迹材料范文
2014/05/03 职场文书
2014银行领导班子群众路线对照检查材料思想汇报
2014/09/17 职场文书
2014年信息中心工作总结
2014/12/17 职场文书
介绍信模板
2015/01/31 职场文书
督导岗位职责范本
2015/04/10 职场文书
教师节主题班会方案
2015/08/17 职场文书