html5 lang作用,HTML5中的lang属性,zh
先提供资源。如果我弄错了什么,请以这些文档为准:
W3C文档、IANA已登记的子标签、BCP 47、RFC 5646。
二、格式简介
先上一张图片:
一个Language Tags,由①到⑦一共四个子标签组成。有什么盘算不清楚的,请参考资源部分提供的文档。
三、各部分含义
①language:主语言,用代码“zh”表示汉语,小写。好像对于大小写没有强制要求,习惯而已。还是遵循习惯吧,总让别人看着别扭不是彰显个性的好办法。
②extlang:翻译成“扩展的语言”?对于汉语而言,这个部分表示的是普通话和方言。比如“cmn”表示普通话,“yue”表示粤语,“lzh”我也不知道表示什么。小写。
③script:书写格式,汉语不存在西方语言的拼写变化,只有“简体”和“繁体”之分。“Hans”表示简体,“Hant”表示繁体,首字母大写。
④region:地区,跟汉语有关的地区大概就是中国大陆(CN)、中国台湾(TW)、中国香港(HK)、中国澳门(MO)、新加坡(SG)这五处。
⑤⑥⑦:你猜……
四、方言的困扰
我数了一下,除了“cmn”表示普通话之外,IANA还批准了至少13个方言子标签,罗列如下:
cdo、cjy、cpx、czh、czo、gan、hak、hsn、lzh、mnp、nan、wuu、yue
引起困惑的是,这些标签,既可以作为extlang子标签表示方言(扩展的语言?)也可以放在language位置作为主语言。那么这些标签和传统的“zh”标签是什么关系呢?IANA把“zh”定义为“macrolanguage”,搞不清楚怎么翻译,微语言?宏语言?还是语系?BCP 47的观点认为汉语包含若干语言,它似乎认为汉语的方言可以视为独立的语言。所以,“zh”依然可以作为主语言,然后在extlang的位置标示方言,即这样的格式。
弄清方言带来的困惑之后,我个人的建议是使用“zh”作为主语言。我不想进行政治讨论也不想研究深奥的学术问题,建议只使用“zh”做主语言子标签的唯一理由是避免混乱。现在为数不多(就算不多吧)的方言标签还是一种很幸福的状态。别忘了江湖上有着反击战中用方言当密语的传说,而哈尔滨西安成都恐怕又是不同的方言。谁知道IANA的大佬们未来会批准出多少个中国的语言来,都背下来?或者维护代码的时候,先查一下这是中国方言还是某个犄角旮旯的外语?
“zh”表示中文;“zh-xxx"还是表示中文,不过需要考虑方言特性。这样的表达不会带来任何误解。
五、越短越好
W3C的建议是:“The golden rule when creating language tags is to keep the tag as short as possible”。标签的某些部分确实没有必要。比如如果不涉及语音合成等应用,extlang部分存在的意义微乎其微,不管你是什么方言口音,写出来的是一样的文字。而region部分对于汉语而言似乎实意义也不大,有人知道新加坡人说普通话和大陆人有什么区别吗,我不太清楚。
所以,W3C的示例就成了最好的用法——“zh-Hans”——中文,简体。足矣。或者我个人觉得只用“zh”也可以,混用简繁可以有啊。
六、兼容
传统上,一般使用“zh-CN”,新的标准是不是被所有的浏览器支持,这个我真的没有精力去试一试,或者目前使用“zh-Hans-CN”更保险一些?
七、免责
不能保证内容的正确性。更可靠的手段是阅读标准文档。
写这篇小文,是因为刚刚帮朋友讲了一下相关的内容,就顺手写下来了。还能帮到别的网友的话,那是我的荣幸。
虽然提供了四个资源链接,其实这一次我并没有再次阅读。全是靠记忆写的,如果有什么错误的地方,还请谅解,也请您向我指出。
HTML5中的lang属性,zh-CN还是zh-Hans?
标签:
html5 lang作用,HTML5中的lang属性,zh相关推荐
- html5自定义属性作用,html5自定义属性:如何获取自定义属性值(附代码)
这篇文章给大家介绍的内容是关于html5自定义属性:如何获取自定义属性值(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 自定义属性: 在HTML5中我们可以自定义属性,其格 ...
- html中的js作用,javascript中的innerHTML属性有什么作用
innerHTML在javaScript中具有双向功能,一是可以从指定的元素对象中获取内容,二是可以把自定义内容插入到指定的元素对象中去. 定义和用法 innerHTML属性用于设置或返回指定标签之间 ...
- [html] html标签中的lang属性有什么作用?
[html] html标签中的lang属性有什么作用? 根据lang属性来设定不同语言的css样式,或者字体告诉搜索引擎做精确的识别让语法检查程序做语言识别帮助翻译工具做识别帮助网页阅读程序做识别等等 ...
- html标签中的lang属性
写在html标签中的lang属性作用:声明当前页面的语言类型. 如: <html lang='en'></html> //英文 <html lang='zh'>&l ...
- HTML5 dataset遍历,H5中data-xxxx属性
data-* 属性是 HTML5 中的新属性. 本文转自:https://www.jianshu.com/p/57bf9cc64ef2 定义和用法 (1)data-* 属性用于存储页面或应用程序的私有 ...
- overflow属性html5,什么是css中overflow属性
什么是css中overflow属性 发布时间:2020-07-11 16:06:42 来源:亿速云 阅读:192 作者:Leah 本篇文章给大家分享的是有关什么是css中overflow属性,小编觉得 ...
- html5中没有align属性,HTML标签align属性的用法问题
HTML中表格.文字.图像等元素都有使用到align属性,align属性主要是影响设置元素的水平对齐方式,给表格.文字.及图像等元素设置align属性,其表现形式是不一致的. 给表格元素设置align ...
- html5图片img,HTML中图片img标签
这篇文章主要介绍了HTML图片img标签的相关资料,需要的朋友可以参考下 摘要项目说明 形式 支持H2+ / e2+ / N2+ / Fx1+ / Op6+ / Ch1+ / Sa1+ 标签省略开始标 ...
- html的设置语言为en,CSS中的html [lang =“ en”]和html:lang(en)有什么区别?
小编典典 在HTML中,:lang()伪类和属性选择器都将匹配具有相应lang属性的元素. 不同的是,一个浏览器可能不得不确定给定元件的抵靠测试时的语言的其它方式:lang(),其可通过在文档语言和/ ...
最新文章
- Tomcat 架构原理解析到架构设计借鉴
- sql2005 Agent XPs 选项释义
- Android开发之Serializable 和 Parcelable的区别(源代码分享)
- python读取txt文件-python txt文件的写入和读取
- 宗馥莉:艰难的接班人与幸运的创二代
- uirecorder 启动webdriver服务报错
- 2014\Province_C_C++_A\2 切面条
- Servlet与缓存
- 《深入实践Spring Boot》一3.3 使用Thymeleaf模板
- arcengine遍历属性表_小程序导出数据到excel表
- werkzeug routing.MapAdapter
- linux ftp 实例
- 概率论与数理统计浙大第五版 第一章 部分习题+R代码
- github创建代码仓库并上传代码
- Boren-python接小球游戏
- android 中获取所有有效网卡和对应的IP地址
- 520表白神器-教你用微信每天给TA说晚安
- 中国人必须知道的76个常识
- EESM和MI-ESM
- Java 遍历 Map 的几种方式