HTML 字符编码



字符编码是将字节转换为字符的方法。为了正确验证或显示 HTML 文档,程序必须选择正确的字符编码。

HTML 字符集属性

元标签的 HTML charset 属性用于指定网页的字符编码。

<meta charset="UTF-8">

ASCII 字符集

计算机中最常用的字符集或字符编码是 ASCII **(美国信息交换标准代码)**,这可能是电子文本编码中最广泛使用的字符集。ASCII 编码包含 128 个字符 (0-127)。

  • 英文字母 (A-Z 和 a-z)
  • 数字 (0-9)
  • 特殊字符 (@, #, $, %, 等)

您可以查看完整的 **可打印 ASCII 字符** 集。

ANSI 字符集

ANSI 字符集通常用于 Windows 系统,也称为 windows-1252。它包括:

  • 从 0 到 127,ANSI 遵循 ASCII 字符。
  • 从 128 到 159,添加了一些额外的特殊字符。
  • 从 160 到 255,它与 UTF-8 相同。

ISO-8859-1 字符集

ISO-8859-1 是 HTML 4 的默认字符集。此字符集支持 256 个不同的字符代码。

  • 前 128 个字符与 ASCII 相同
  • 不使用 128 到 159 的字符
  • 从 160 到 255 与 ANSI 和 UTF-8 相同

UTF-8 字符集

HTML5 规范建议开发者在网页中使用 UTF-8 编码,因为 UTF-8 涵盖了世界上所有字符和符号。UTF-8 的字符是:

  • 0 到 127 个字符与 ASCII 相同
  • 128 到 159 个字符为空
  • 从 160 到 255 使用与 ANSI 和 8859-1 相同的字符
  • 其他语言的字符使用 256 到 1000 指定

国际标准化组织创建了一系列字符集来处理不同的国家字符。对于英语和其他大多数西欧语言的文档,广泛支持的编码 ISO-8859-1 被使用。

ISO 字符集

以下是世界各地使用的字符集列表及其描述。

字符集 描述
ISO-8859-1

拉丁字母第 1 部分

涵盖北美洲、西欧、拉丁美洲、加勒比地区、加拿大、非洲

ISO-8859-2

拉丁字母第 2 部分

涵盖东欧

ISO-8859-3

拉丁字母第 3 部分

涵盖东南欧、世界语、其他杂项

ISO-8859-4

拉丁字母第 4 部分

涵盖斯堪的纳维亚/波罗的海地区 (以及 ISO-8859-1 中未包含的其他地区)

ISO-8859-5

拉丁/西里尔字母第 5 部分

ISO-8859-6

拉丁/阿拉伯字母第 6 部分

ISO-8859-7

拉丁/希腊字母第 7 部分

ISO-8859-8

拉丁/希伯来字母第 8 部分

ISO-8859-9

拉丁 5 字母第 9 部分

与 ISO-8859-1 相同,但土耳其字符替换了冰岛字符

ISO-8859-10

拉丁 6 拉丁 6 拉普兰语、北欧语和爱斯基摩语

ISO-8859-15

与 ISO-8859-1 相同,但添加了更多字符

ISO-2022-JP

拉丁/日语字母第 1 部分

ISO-2022-JP-2

拉丁/日语字母第 2 部分

ISO-2022-KR

拉丁/韩语字母第 1 部分

随后成立了 Unicode 联盟,以设计一种方法来显示不同语言的所有字符,而不是为不同语言使用这些不同的不兼容字符代码。

因此,如果您想创建使用来自多个字符集的字符的文档,则可以使用单个 Unicode 字符编码来做到这一点。

因此,Unicode 指定了可以以特殊方式处理字符串的编码,以便为其包含的巨大字符集留出足够的空间。这些被称为 UTF8、UTF-16 和 UTF-32。

UTF 字符集

字符集 描述
UTF-8

一种 Unicode 转换格式,以 8 位单元 (即字节) 出现。UTF8 中的一个字符可以是 1 到 4 个字节长,使 UTF8 成为可变宽度。

UTF-16

一种 Unicode 转换格式,以 16 位单元 (即短整数) 出现。它可以是 1 或 2 个短整数长,使 UTF16 成为可变宽度。

UTF-32

一种 Unicode 转换格式,以 32 位单元 (即长整数) 出现。它是一种固定宽度格式,长度始终为 1 个“长整数”。

Unicode 字符集的前 256 个字符对应于 ISO-8859-1 的 256 个字符。默认情况下,HTML 4 处理器应支持 UTF-8,而 XML 处理器应支持 UTF-8 和 UTF-16;因此,所有符合 XHTML 标准的处理器也应支持 UTF-16。

广告