当前位置: 代码迷 >> HTML/CSS >> <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  详细解决方案

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

热度:1629   发布时间:2012-12-27 10:17:10.0
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
META,网页Html语言里Head区重要标签之一
HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页内容。

常用的HTTP- EQUIV类型有:

Content-Type和Content-Language (显示字符集的设定)
说明:设定页面使用的字符集,用以说明主页制作所使用的文字已经语言,浏览器会根据此来调用相应的符集显示page内容。
<Meta http-equiv="Content-Type" Content="text/html; Charset=gb2312">该META标签定义了HTML页面所使用的字符集为GB2132,就是国标汉字码。如果将其中的“charset =GB2312”替换成“BIG5”,则该页面所用的字符集就是繁体中文Big5码。当你浏览一些国外的站点时,IE浏览器会提示你要正确显示该页面需要下载xx语支持。这个功能就是通过读取HTML页面META标签的Content-Type属性而得知需要使用哪种字符集显示该页面的。如果系统里没有装相应的字符集,则IE就提示下载。其他的语言也对应不同的charset,比如日文的字符集是“iso-2022-jp ”,韩文的是“ks_c_5601”。


Content-Type的Content还可以是:text/xml等文档类型Charset选项: ISO-8859-1(英文)、BIG5、UTF-8、SHIFT-Jis、Euc、Koi8-2、us-ascii, x-mac-roman, iso-8859-2, x-mac-ce, iso-2022-jp, x-sjis, x-euc-jp,euc-kr, iso-2022-kr, gb2312, gb_2312-80, x-euc-tw, x-cns11643-1,x-cns11643-2等字符集;Content-Language的Content还可以是:EN、FR等语言代码。


字符集与编码
各个国家和地区所制定的不同 ANSI 编码标准中,都只规定了各自语言所需的“字符”。比如:汉字标准(GB2312)中没有规定韩国语字符怎样存储。这些 ANSI 编码标准所规定的内容包含两层含义:
1. 使用哪些字符。也就是说哪些汉字,字母和符号会被收入标准中。所包含“字符”的集合就叫做“字符集”。
2. 规定每个“字符”分别用一个字节还是多个字节存储,用哪些字节来存储,这个规定就叫做“编码”。
各个国家和地区在制定编码标准的时候,“字符的集合”和“编码”一般都是同时制定的。因此,平常我们所说的“字符集”,比如:GB2312, GBK, JIS 等,除了有“字符的集合”这层含义外,同时也包含了“编码”的含义。
“UNICODE 字符集”包含了各种语言中使用到的所有“字符”。用来给 UNICODE 字符集编码的标准有很多种,比如:UTF-8, UTF-7, UTF-16, UnicodeLittle, UnicodeBig 等。
1、ISO-8859-1:
最简单的编码规则,每一个字节直接作为一个 UNICODE 字符。比如,[0xD6, 0xD0] 这两个字节,通过 iso-8859-1 转化为字符串时,将直接得到 [0x00D6, 0x00D0] 两个 UNICODE 字符,即 "??"。
反之,将 UNICODE 字符串通过 iso-8859-1 转化为字节串时,只能正常转化 0~255 范围的字符。

2、GB2312,BIG5,Shift_JIS,ISO-8859-2
把 UNICODE 字符串通过 ANSI 编码转化为“字节串”时,根据各自编码的规定,一个 UNICODE 字符可能转化成一个字节或多个字节。
反之,将字节串转化成字符串时,也可能多个字节转化成一个字符。比如,[0xD6, 0xD0] 这两个字节,通过 GB2312 转化为字符串时,将得到 [0x4E2D] 一个字符,即 '中' 字。
“ANSI 编码”的特点:
1. 这些“ANSI 编码标准”都只能处理各自语言范围之内的 UNICODE 字符。
2. “UNICODE 字符”与“转换出来的字节”之间的关系是人为规定的。

3、UTF-8,UTF-16,UnicodeBig
与“ANSI 编码”类似的,把字符串通过 UNICODE 编码转化成“字节串”时,一个 UNICODE 字符可能转化成一个字节或多个字节。
与“ANSI 编码”不同的是:
1. 这些“UNICODE 编码”能够处理所有的 UNICODE 字符。
2. “UNICODE 字符”与“转换出来的字节”之间是可以通过计算得到的。

附:code page charset对照表
Code Page    charset    语种

708          ASMO-708    阿拉伯字符 (ASMO 708)
720          DOS-720    阿拉伯字符 (DOS)
28596        iso-8859-6    阿拉伯字符 (ISO)
1256         windows-1256   阿拉伯字符 (Windows)
1257         windows-1257   波罗的海字符 (Windows)
852          ibm852    中欧字符 (DOS)
28592        iso-8859-2    中欧字符 (ISO)
1250         windows-1250   中欧字符 (Windows)
936          gb2312    简体中文 (GB2312)
950          big5    繁体中文 (Big5)
862          DOS-862    希伯来字符 (DOS)
866          cp866    西里尔字符 (DOS)
874          windows-874    泰语 (Windows)
932          shift_jis    日语 (Shift-JIS)
949          ks_c_5601-1987   朝鲜语
1251         windows-1251   西里尔字符 (Windows)
1252         iso-8859-1    西欧字符
1253         windows-1253   希腊字符 (Windows)
1254         iso-8859-9    土耳其字符 (Windows)
1255         windows-1255   希伯来字符 (Windows)
1258         windows-1258   越南字符 (Windows)
20866        koi8-r    西里尔字符 (KOI8-R)
21866        koi8-ru    西里尔字符 (KOI8-U)
28595        iso-8859-5    西里尔字符 (ISO)
28597        iso-8859-7    希腊字符 (ISO)
28598        iso-8859-8    希伯来字符 (ISO-Visual)
38598        iso-8859-8-i   希伯来字符 (ISO-Logical)
50932        _autodetect    日语 (自动选择)
51932        euc-jp    日语 (EUC)
52936        hz-gb-2312    简体中文 (HZ)
65001        utf-8    Unicode (UTF-8)

From: http://hi.baidu.com/%D3%A4%B6%F9%CA%D2%BB%CA%BA%F3

  相关解决方案