HTML Unicode (UTF-8) 参考手册

Unicode 联盟

Unicode 联盟开发了 Unicode 标准。他们的目标是用其标准的 Unicode 转换格式(UTF)替换现有的字符集。

Unicode 标准已经获得成功,并通过 HTML、XML、Java、JavaScript、电子邮件、ASP、PHP 等得以实现。在许多操作系统和所有现代浏览器中,同样支持 Unicode 标准。

Unicode 联盟与领先的标准开发组织(例如 ISO、W3C 和 ECMA)开展合作。

Unicode 字符集

Unicode 可以通过不同的字符集实现。最常用的编码是 UTF-8 和 UTF-16:

字符集 说明
UTF-8

UTF8 中的字符长度可以是 1 到 4 个字节。

UTF-8 可以表示 Unicode 标准中的任何字符。

UTF-8 向后兼容 ASCII。 UTF-8 是电子邮件和网页的首选编码

UTF-16

16 位 Unicode 转换格式是 Unicode 的可变长度字符编码,能够对整个 Unicode repertoire 进行编码。

UTF-16 用于主要的操作系统和环境,例如 Microsoft Windows、Java 和 .NET。

注释:Unicode 的前 128 个字符(与 ASCII 一一对应)使用单个八位字节编码,这八位字节有与 ASCII 相同的二进制值,从而使有效的 ASCII 文本也成为有效的 UTF-8 编码 Unicode。

提示:HTML 4 支持 UTF-8。 HTML 5 支持 UTF-8 和 UTF-16!

HTML5 标准:Unicode UTF-8

由于 ISO-8859 中的字符集大小受限制,并且不兼容多语言环境,因此 Unicode 联盟开发了 Unicode 标准。

Unicode 标准(几乎)涵盖了世界上所有的字符、标点符号和符号。

Unicode 支持独立于平台和语言的文本处理、存储和传输。

HTML5 中的默认字符编码为 UTF-8。

如果 HTML5 网页使用的字符集与 UTF-8 不同,则应在 <meta> 标记中指定该字符集,例如:

例子

<meta charset="ISO-8859-1">

Unicode 和 UTF-8 之间的区别

Unicode 是字符集。 UTF-8 是编码。

Unicode 是有唯一的十进制数字(代码点)的字符列表。 A = 65,B = 66,C = 67,...。

这个十进制数字列表表示字符串 "hello":104 101 108 108 111

编码是将这些数字转换为二进制数字以存储在计算机中的方式:

UTF-8 编码将像这样(二进制)存储 "hello":01101000 01100101 01101100 01101100 01101111

编码将数字转换为二进制。字符集将字符转换为数字。

HTML5 UTF-8 字符代码

下表是 HTML5 支持的一些 UTF-8 字符代码的列表:

字符代码 十进制 十六进制
C0 Controls and Basic Latin 0-127 0000-007F
C1 Controls and Latin-1 Supplement 128-255 0080-00FF
Latin Extended-A 256-383 0100-017F
Latin Extended-B 384-591 0180-024F
Spacing Modifiers 688-767 02B0-02FF
Diacritical Marks 768-879 0300-036F
Greek and Coptic 880-1023 0370-03FF
Cyrillic Basic 1024-1279 0400-04FF
Cyrillic Supplement 1280-1327 0500-052F
General Punctuation 8192-8303 2000-206F
Currency Symbols 8352-8399 20A0-20CF
Letterlike Symbols 8448-8527 2100-214F
Arrows 8592-8703 2190-21FF
Mathematical Operators 8704-8959 2200-22FF
Box Drawings 9472-9599 2500-257F
Block Elements 9600-9631 2580-259F
Geometric Shapes 9632-9727 25A0-25FF
Miscellaneous Symbols 9728-9983 2600-26FF
Dingbats 9984-10175 2700-27BF