当我们浏览一个网页时,浏览器会向 WEB 服务器发送一个名为 accept-language
的请求头。这个请求头包含了我们期望服务器返回的语言信息,一个典型的 accept-language
数据值可以是下面这样:
zh-CN,zh;q=0.9,en;q=0.8,fr;q=0.7,pt;q=0.6,so;q=0.5,de;q=0.4,en-US;q=0.3,ko;q=0.2,ja;q=0.1,zh-TW;q=0.1,und;q=0.1
但是有时我们也会在源代码中看到诸如 zh-Hans 和 zh-Hant 的字样。比如微软的文档就采用了 zh-cn 的形式:https://docs.microsoft.com/zh-cn/ ,ABP Framework 则采用了 zh-Hans :https://docs.abp.io/zh-Hans/abp/latest/ 。
zh-CN(简体中文)和zh-TW(繁体中文):
- zh-CN(简体中文): 代表了中华人民共和国(中国)使用的简体中文,即简化字形的中文。
- zh-TW(繁体中文): 代表了中华民国(台湾)、香港和澳门等地区使用的繁体中文,即繁体字形的中文。
zh-Hans 和 zh-Hant:
- zh-Hans: 代表中文的简体字形,类似于zh-CN。这个代码是按照ISO 639-3语言代码标准定义的,其中”Hans”表示“汉字简化”。
- zh-Hant: 代表中文的繁体字形,类似于zh-TW。这个代码也是按照ISO 639-3语言代码标准定义的,其中”Hant”表示“汉字繁体”。
目前仅有 Windows 10 系统以及 Edge 浏览器支持 zh-Hans 写法。旧的操作系统与当下的主流浏览器均使用 zh、zh-CN 来代表简体中文,zh-TW 来代表繁体中文。
如果需要对 HTML5 网页的 lang 属性进行标记,网站只有一种语言,则直接写 lang="zh"
即可。如果有多种语言支持,则可以写成 lang="zh-CN"
或 lang="zh-TW"
。