这篇帮助文档讲解HTML lang
属性中语言标签(英:language tags)的用法。语言模板通常会用到语言标签。
中国内地 | 香港特区 | 台湾地区 | 日本 | 朝韩 |
---|---|---|---|---|
返 | 返 | 返 | 返 | 返 |
骨 | 骨 | 骨 | 骨 | 骨 |
系 | 系 | 系 | 系 | 系 |
塌 | 塌 | 塌 | 塌 | 塌 |
扉 | 扉 | 扉 | 扉 | 扉 |
萌娘百科收录的内容涵盖了多个语言及地区,介绍中不可避免地会使用到不同语言。语言标签旨在标记一段文字的语言信息。
在HTML中使用lang
属性指定语言标签,这是一个全局属性。
<span lang="zh-Hans">这是一段标记为“汉语,简体字”的文本。</span>
其中粗体部分为lang
属性,下划线部分为语言标签。类似的代码被封装在{{Lang}}、{{Ruby}}乃至{{LyricsKai}}等模板中,使用时填写语言标签即可。
在萌娘百科,语言标签最重要的使用情境莫过于使汉字以合适的字形显示。
汉字在东亚很多地区都有使用,经过各自发展,不同地区对于汉字的字形(或写法)有了各自的习惯与标准。这些汉字很可能会遇到共用Unicode码位的情形,这时就需要标记语言来让浏览器显示正确的变体,很多情况下这体现为根据语言标签调用不同的字体(如表格所示)[1]。
这种情况不仅限于汉字。
标记语言能够让屏幕阅读器正确地发音和切换语种,服务视觉障碍者。
语言标签使用IETF(互联网工程任务组)的BCP 47文档所定义的格式。
语言子标签-扩展语言子标签-文字子标签-地区子标签-变体子标签-扩展子标签-私用子标签
语言子标签为必须,其余为可选,应保持相对顺序。子标签之间以连字号-
相连。各个子标签有其不同的标准,由于地区子标签之后的子标签极不常用,下面仅就前四项进行详细说明。
主要语言子标签(英:primary language subtag)总是出现在语言标签的开头。可以使用ISO 639-1所定义的二字母代码,以及ISO 639-2、ISO 639-3和ISO 639-5所定义的三字母代码,全小写。推荐的做法是优先使用ISO 639-1的二字母代码,三字母代码多在没有二字母代码的情况下作为补充使用。
常见的语言子标签 (ISO 639-1二字母代码和ISO 639-3三字母代码) | ||
---|---|---|
语言 | 二字母代码 | 三字母代码 |
汉语(特指官话) | zh
|
zho
|
—官话、现代标准汉语 | 不适用 | cmn
|
—赣语 | 不适用 | gan
|
—客家语 | 不适用 | hak
|
—文言 | 不适用 | lzh
|
—闽南语 | 不适用 | nan
|
—吴语 | 不适用 | wuu
|
—粤语 | 不适用 | yue
|
英语 | en
|
eng
|
壮语 | za
|
zha
|
藏语 | bo
|
tib
|
—卫藏语 | 不适用 | bod
|
—康语 | 不适用 | khg kbg
|
蒙古语 | mn
|
mon
|
维吾尔语 | ug
|
uig
|
朝鲜语、韩语 | ko
|
kor
|
日语 | ja
|
jpn
|
泰语 | th
|
tha
|
越南语 | vi
|
vie
|
阿拉伯语 | ar
|
ara
|
印地语 | hi
|
hin
|
印度尼西亚语 | id
|
ind
|
俄语 | ru
|
rus
|
西班牙语 | es
|
spa
|
葡萄牙语 | pt
|
por
|
法语 | fr
|
fra
|
德语 | de
|
deu
|
意大利语 | it
|
ita
|
波兰语 | pl
|
pol
|
乌克兰语 | uk
|
ukr
|
土耳其语 | tr
|
tur
|
塞尔维亚语 | sr
|
srp
|
丹麦语 | da
|
dan
|
希腊语 | el
|
ell
|
—古希腊语 | 不适用 | grc
|
梵语 | sa
|
san
|
拉丁语 | la
|
lat
|
芬兰语 | fi
|
fin
|
世界语 | eo
|
epo
|
扩展语言子标签(英:extended language subtag,简记extlang)在使用时紧跟主要语言子标签,并位处其他任何子标签之前。每一个“主要语言子标签-扩展语言子标签”组合都会有其对应的主要语言子标签,且与扩展语言子标签的名称完全一致,故“主-扩”形式只是为了保证语言标签在旧系统中的兼容性,如有可能请优先只用主要语言子标签来标记语言,如标记粤语时使用yue
而不是zh-yue
。
文字子标签(英:script subtag)可以使用ISO 15924所定义的四字母代码,首字母大写。
常见的文字子标签 (ISO 15924四字母代码) | ||
---|---|---|
文字 | 代码 | |
汉字 | Hani
| |
简化字、简体字 | Hans
| |
正体字、繁体字 | Hant
| |
希腊字母 | Grek
| |
拉丁字母 | Latn
| |
西里尔字母 | Cyrl
| |
朝鲜语字母、韩语字母 | Jamo
| |
注音符号 | Bopo
| |
谚文、韩字 | Hang
| |
韩汉混用文 | Kore
| |
悉昙文字 | Sidd
| |
天城文 | Deva
| |
平假名 | Hira
| |
片假名 | Kana
| |
假名 | Hrkt
| |
日文文字[2] | Jpan
|
地区子标签(英:region subtag)可以使用ISO 3166-1 alpha-2所定义的二字母代码,全大写。
常见的地区子标签 (ISO 3166-1二字母代码) | |
---|---|
地区 | 代码 |
中国内地(或泛指中国) | CN
|
香港特别行政区 | HK
|
澳门特别行政区 | MO
|
中国台湾 | TW
|
朝鲜 | KP
|
韩国 | KR
|
马来西亚 | MY
|
新加坡 | SG
|
美国 | US
|
英国 | GB
|
语言标签 | 涵义 | 备注 |
---|---|---|
zh
|
汉语 | 没有任何其他标注,在中文萌娘百科这个以汉语为主的站点上不推荐使用 |
zh-Hans
|
汉语,简体字 | 在中文萌娘百科使用的繁简转换处理系统中使用的记法,省略了地区标注 |
zh-Hant
|
汉语,繁体字 | |
zh-CN
|
汉语,中国内地 | 在中文萌娘百科使用的繁简转换处理系统中使用的记法,省略了简繁标注 |
zh-HK
|
汉语,香港特别行政区 | |
zh-TW
|
汉语,中国台湾 | |
zh-Hans-CN
|
汉语,简体字,中国内地 | 权衡了兼容性和完整标注的需要,但该记法实际应用不多 |
zh-Hant-HK
|
汉语,繁体字,香港特别行政区 | |
zh-Hant-TW
|
汉语,繁体字,中国台湾 | |
zho-Hans
|
汉语,简体字 | 使用三字母语言代码,但兼容性可能不佳 |
zho-Hant-HK
|
汉语,繁体字,香港特别行政区 | |
cmn-Hans
|
官话,简体字 | zh 在表示普通话、官话的时候可以使用cmn 代替,但兼容性可能不佳
|
cmn-Hant-TW
|
官话,繁体字,中国台湾 | |
zh-cmn-Hans
|
汉语,官话,简体字 | zh 和cmn 重复,不推荐使用这种记法
|
zh-Latn
|
汉语,拉丁字母转写 | 可以用于标记汉语拼音(-pinyin )、威妥玛拼音(-wadegile )、注音第二式等
|
yue
|
粤语 | 粤语没有二字母代码,故记为三字母代码 |
zh-yue
|
汉语,粤语 | 添加zh 以保证兼容性,有条件者应单用yue 来与官话作区分
|
en
|
英语 | |
ja
|
日语 | |
ja-JP
|
日语,日本 | 日语绝大多数情况都无需区分地域,不推荐使用 |
ja-Jpan
|
日语,日文文字 | 日语即默认以日文文字书写,无需区分,不推荐使用 |
ja-Hrkt
|
日语,假名书写 | 可以用于标记假名注音,不常用 |
ja-Latn
|
日语,拉丁字母转写 | 可以用于标记各种日语罗马字 |
ko
|
朝鲜语/韩语 | 在中文萌娘百科广泛使用的记法,省略朝韩地区 |
ko-KP
|
朝鲜语,朝鲜 | 标明了地区,不常用 |
kor-KR
|
韩语,韩国 | |
ko-Kore
|
朝鲜语/韩语,韩汉混用 | |
ru
|
俄语 | |
ru-Latn
|
俄语,拉丁字母转写 | |
sa-Sidd
|
梵语,以悉昙文字书写 | |
art-x-xdi8 [3]
|
人工语言,希顶语 | 使用了私用子标签,其兼容性无从谈起 省略了文字标注,无法从标签中判断标记的文本是希顶字母还是希顶汉字 |
以下代码可能被错误使用 | ||
ch
|
查莫罗语 | 常被错误当作汉语,若确实需要的情况下应当使用zh 标记之
|
cn
|
||
jp jap lj
|
常被错误当作日语,应当使用ja 标记之
| |
kr
|
卡努里语 | 常被错误当作朝鲜语/韩语,应当使用ko 标记之
|
kp
|
||
gr po sp cz kz dk
|
||
unicode
|
Unicode(统一码)是一套信息技术标准,不是可标记的语言 | |
ipa
|
IPA(国际音标,International Phonetic Alphabet)是一套标音系统 若确实需要标记应当使用 fonipa
|
|
Deprecated
(已弃用)的各个子标签均可正常使用