HTML 字符编码


HTML字符编码

为了正确显示HTML页面,浏览器必须知道页面采用的是什么字符编码。

万维网(World Wide Web)最早采用的是ASCII字符集。ASCII字符集包括了0到9数字、A到Z大小写英文字母以及一些特殊字符。注意:对于ASCII(以及ISO字符集)而言,字符就采用它们在字符集里的代码来编码,所以ASCII字符集与ASCII字符编码是相同的概念。但对于Unicode字符集,它存在多种不同的编码方式,所以字符集与字符编码不能混为一谈。

完整的ASCII参考手册

由于ASCII无法支持很多国家的语言,因此现在的浏览器一般都以ISO-8859-1为默认字符编码(主要是西欧语言版,简体中文版浏览器多以GB2312为默认字符编码)。

完整的ISO-8859-1参考手册

如果网页采用的不是ISO-8859-1字符编码,那么应当通过<meta>标签指出。

试一个


ISO字符集

为不同语言定义标准字符集的工作是由ISO(国际标准化组织)来开展的。

以下列出了世界上各种正在使用的字符集:

字符集 描述 范围
ISO-8859-1 拉丁字母1(西欧语言) 北美洲、西欧、拉丁美洲、加勒比海地区、加拿大、非洲
ISO-8859-2 拉丁字母2(东欧语言) 东欧
ISO-8859-3 拉丁字母3(南欧语言) 南欧、世界语及其他
ISO-8859-4 拉丁字母4(北欧语言) 斯堪的纳维亚/波罗地海国家(以及其他未包含在ISO-8859-1里的)
ISO-8859-5 拉丁/西里尔语 采用西里尔字母的语言,如保加利亚语、白俄罗斯语、俄语及马其顿语
ISO-8859-6 拉丁/阿拉伯语 采用阿拉伯字母的语言
ISO-8859-7 拉丁/希腊语 现代希腊语及源于希腊语的数学符号
ISO-8859-8 拉丁/希伯来语 采用希伯来字母的语言
ISO-8859-9 拉丁字母5(土耳其语) 土耳其语。跟ISO-8859-1相同,只是用土耳其语字母代替了冰岛语字母
ISO-8859-10 拉丁字母6(拉普兰语、北欧语、爱斯基摩语) 北欧诸语言
ISO-8859-15 拉丁字母9(亦称拉丁字母0) 与ISO 8859-1相似,只是用欧元符号和其他一些符号代替了一些不常用的符号
ISO-2022-CN 汉字 中文
ISO-2022-JP 拉丁/日语字母1 日语
ISO-2022-JP-2 拉丁/日语字母2 日语
ISO-2022-KR 拉丁/韩语字母 韩语


Unicode标准

由于上述字符集的容量有限,不兼容多语言环境,因此Unicode联盟开发了Unicode标准。

Unicode标准涵盖了世界上的所有字符、标点及各种符号。

Unicode使得我们可以专注于文本数据的处理、存储和交换,而不必为平台、程序和语言操心。


Unicode联盟

Unicode联盟开发了Unicode标准。他们的目标是用标准的Unicode转换格式(Unicode Transformation Format,简称UTF)来取代现有字符集。

Unicode标准已经取得成功,并已在XML、Java、ECMAScript(JavaScript)、LDAP、CORBA 3.0、WML中得到实现。另外,现在许多操作系统和浏览器也都支持Unicode标准。

Unicode联盟与各主要的标准化组织(如ISO、W3C和ECMA等)均开展了合作。

Unicode可用不同的字符编码来实现,最常用的编码方式是UTF-8和UTF-16:

字符编码 描述
UTF-8 UTF-8中的字符可以是1到4个字节长。UTF-8可以表达Unicode标准里的所有字符。UTF-8向后兼容ASCII。UTF-8是电子邮件和网页的首选编码.
UTF-16 16位的Unicode转换格式(UTF)是一种变长的字符编码,它可以表达整个Unicode字符表。UTF-16已被主流操作系统或环境所采用,比如微软Windows 2000/XP/2003/Vista/CE、Java和.NET字节编码环境。

提示:Unicode字符集里的前256个字母,与ISO-8859-1里的256个字符是相对应的。

提示:所有HTML 4处理器都已支持UTF-8,所有XHTML和XML处理器都支持UTF-8和UTF-16!

粤ICP备11097351号-1