lang属性

定义

HTML的 lang 属性表示语言代码,用于网页或部分网页的语言。

根据W3C推荐标准,应该通过<html>标签中的 lang 属性对每张页面的主要语言进行声明。

<html lang=“en”>
  …
</html>

在XHTML中,采用如下方式在<html>标签中对语言进行声明:

<html xmlns=“http://www.w3.org/1999/xhtml” lang=“en” xml:lang=“en”>
  …
</html>

lang语言标签的排列方式

目前,最新的语言标签标记法的国际标准是 IETF 的 BCP 47(Best Current Practice),也就是 RFC 5646 取代了之前的 RFC 4646,3066和1766,名称《Tags for Identifying Languages》。lang属性的取值遵循 BCP 47 — Tags for Identifying Languages 。

RFC 5646 规定语言标签按如下方式排列:

language—extlang—script—region—variant—extension—privateuse

  1. language:这部分就是ISO 639 规定的主代码,比如中文是 zh。
  2. script:表示变体,比如简体汉字是 zh-Hans,繁体汉字是 zh-Hant。
  3. region:表示语言使用的地理区域。比如zh-Hans-CN就是中国大陆使用的简体中文。
  4. variant:表示方言。
  5. extension-privateus:表示扩展用途和私有标识。

所有语言标签都是大小写无关的,但是按照惯例,language标签小写,region标签大写,script标签首字母大写。不同标签之间用连字号—链接。

RFC 5646 定义了HTML中必须使用的语言代码。语言代码包括一个主代码和一系列子代码,主代码必须使用,子代码可以不使用。格式为:主代码,主代码-子代码,主代码-子代码-子代码,……。

2个字母的主语言标签与 ISO 639 一致,不允许使用标准意外的其他值。所有标签都可以在IANA registry 查询,获取更多信息可以阅读 Choosing a language tab 

备注:ISO 639是数个由国际标准化组织(ISO)为各语言所订定的语言代码。此标准还在持续更新。

浏览器支持:所有浏览器均支持lang属性。

实例说明

单一的zh和zh-CN均属于废弃用法。

备注:zh — 中文   cmn — 普通话  Han — 汉字  Hans — 简体中文   Hans — 繁体中文

实例:

zh-cmn 普通话

zh-cmn-Hans 简体中文

zh-cmn-Hant 繁体中文

zh-cmn-Hant-HK 香港地区使用的繁体中文

zh-cmn-Hans-CN 大陆地区使用的简体中文

zh-hak 客家话

zh-yue 粤语

zh-yue-Hant-HK 香港地区使用的粤语,繁体中文

需要加地区的代码情况一般比较少,除非为了强调不同地区汉语使用差异。比如:

<p lang=“zh-cmn-Hans”>
  <b lang=“zh-cmn-Hans-CN”>菠萝</b>和<b lang=“zh-cmn-Hant-TW”>鳳梨</b>其实是同一种水果。指示大陆和台湾成为不同,且新马一带的称谓也不同,称之为<b lang=“zh-cmn-Hans-SG”>黄梨</b>
</p> 

备注:菠萝和凤梨有区别吗?

当然,由于历史原因,有时候不得不继续使用 zh-CN。比如中文维基百科,沿用了传统的zh-CN/zh-HK/zh-SG/zh-TW(按照标准应该使用 zh-cmn-Hans-CN、zh-cmn-Hant-HK、zh-cmn-Hans-SG、zh-cmn-Hant-TW)。这时候,合理的软件行为,是将 zh-CN 等转化为 zh-cmn-Hans(即转化为最常见的误用所对应的实际标准写法)。

实际上,各相关标准,也存在一定的滞后。例如CSS的:lang选择器,不支持选择仅仅简体/繁体中文(而不管是cmn或是yue或是min等汉语方言)。理想情况是CSS3对:lang选择器的语法进行升级,即BCP 47中的高级匹配算法,支持 :lang(*-Hans)这样的写法。

Selectors Level 4 已经加入了对 BCP 47 高级匹配算法的支持,即支持 :lang(*-Hans) 的写法。

/*此随笔内容根据网上内容整理而成,非原创。如有侵权,表示歉意,请告知于我。*/

参考内容:

[1] HTML语言代码参考手册

[2] 网页头部的声明应该是用lang=“zh”还是lang=“zh-cn”?

可参考外文链接:

[1] Language information and text direction

[2] Understanding the New Language Tags

[3] Language tags in HTML and XML

时间: 2024-10-09 08:21:22

lang属性的相关文章

html lang属性

HTML 的 lang 属性可用于网页或部分网页的语言.这对搜索引擎和浏览器是有帮助的. 根据 W3C 推荐标准,您应该通过 <html> 标签中的 lang 属性对每张页面中的主要语言进行声明. <html lang="en"> ... </html> xhtml下 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="e

HTML的lang属性的作用

今天翻了一下<css权威指南>选择器章节,看到伪类选择器,也叫语言选择器:lang(language),顾名思义它会根据html设置的语言应用对应样式,如: *:lang(en){ color: red; } 会作用在这个P元素上 <p lang="en">中文english</p> 效果就是p里的文字全部显示为红色,en代表英文,然而不管p元素里的文字的是中文英文还是法文,都会应用此样式. lang属性可选值见这里. 设置lang属性有什么用处?

HTML5 lang属性

HTML5 lang属性: 此属性规定元素内容的语言. 语法结构: <element lang="language_code"> 浏览器支持: (1).IE浏览器支持此属性. (2).谷歌浏览器支持此属性. (3).火狐浏览器支持此属性. (4).Safari浏览器支持此属性. (5).Opera浏览器支持此属性. HTML4.01与HTML5之间的差异: (1).HTML5中, lang属性可用于任何的HTML元素 (它会验证任何HTML元素.但不一定是有用). (2).

html标签中lang属性及xml:lang属性的作用

lang属性:HTML语言声明属性,用来定义当前文档显示的语言. 如:lang="en"表示定义语言为英文:lang="zh-CN"表示定义语言为中文.其实对于文档显示来说怎样写都无所谓,定义成en的文档也可以显示中文,定义成zh-CN的文档也可以显示英文.但还是应该遵循标准,毕竟这个属性对浏览器和搜索引擎还是有作用的. 其实,在新的XHTML文档中,lang属性已经被xml:lang属性代替.但是,XHTML规范建议在XHTML 1.0文档的<html>

修改SublimeText3插件Emmet生成HTML中lang属性的默认值

打开Preferences → Package Settings → Emmet → Settings-User,输入如下代码并保存: { "snippets": { "variables": { "lang": "zh-CN" } } } 原文地址:https://www.cnblogs.com/deanjs/p/10512389.html

HTML5中的lang属性,zh-CN还是zh-Hans?

一.资源 先提供资源.如果我弄错了什么,请以这些文档为准: W3C文档.IANA已登记的子标签.BCP 47.RFC 5646. 二.格式简介 先上一张图片: 一个Language Tags,由①到⑦一共四个子标签组成.有什么盘算不清楚的,请参考资源部分提供的文档. 三.各部分含义 ①language:主语言,用代码“zh”表示汉语,小写.好像对于大小写没有强制要求,习惯而已.还是遵循习惯吧,总让别人看着别扭不是彰显个性的好办法.②extlang:翻译成“扩展的语言”?对于汉语而言,这个部分表示

HTML lang属性 语言简写一览

Abkhazian AB Afar AA Afrikaans AF Albanian SQ Amharic AM Arabic AR Armenian HY Assamese AS Aymara AY Azerbaijani AZ Bashkir BA Basque EU Bengali, Bangla BN Bhutani DZ Bihari BH Bislama BI Breton BR Bulgarian BG Burmese MY Byelorussian BE Cambodian KM

【HighCharts系列教程】九、语言属性——Lang

一.lang属性说明 Lang属性主要用于配置显示的文字等语言相关属性. 主要可配置如下内容:小数点符号.导出相关文字.月份文字.星期文字等 lang属性不重要,无特殊情况,不用配置. 二.lang属性详解 参数 说明 默认值 decimalPoint  小数点符号 . downloadPNGdownloadJPEGdownloadPDFdownloadSVG 和图表下载相关的文字 Download PNG imageDownload JPEG imageDownload PDF documen

css一些常用的属性

背景关联 background-attachment 属性body { background-image:url(/i/eg_bg_02.gif); background-repeat:no-repeat; } CSS 背景属性 属性 描述 background 简写属性,作用是将背景属性设置在一个声明中. background-attachment 背景图像是否固定或者随着页面的其余部分滚动. background-color 设置元素的背景颜色. background-image 把图像设置