<html lang= "en" > 和 <html lang= "en-US" > 有什么区别?

  • 本文关键字:html lang 区别 en en-US html lang
  • 更新时间 :
  • 英文 :


<html lang="en"><html lang="en-US">有什么区别?破折号后面还有哪些其他值?

根据 w3.org"任何两个字母的子代码都被理解为[ISO3166]国家/地区代码",那么这是否意味着alpha-2代码下列出的任何值都是可接受的值?

<html lang="en">
<html lang="en-US">

第一个lang标记仅指定语言代码。 第二个指定语言代码,后跟国家/地区代码。

破折号后面还有哪些其他值? 根据 w3.org"任何 两个字母的子代码被理解为[ISO3166]国家/地区代码。所以 这是否意味着 alpha-2 代码下列出的任何值都是可接受的 价值?

是的,但是该值可能具有也可能没有任何实际意义。

<html lang="en-US">本质上意味着"此页面采用美国英语风格"。 以类似的方式,<html lang="en-GB">意味着"此页面采用英国英语风格"。

如果您确实想指定无效的组合,则可以。 这没什么意义,但据我所知,根据规范<html lang="en-ES">是有效的。 但是,这种语言/国家组合不会有太大作用,因为西班牙语并不常用。

我的意思是这是否以某种方式进一步帮助浏览器显示页面?

它无助于浏览器显示页面,但它对于搜索引擎、屏幕阅读器和其他可能阅读并尝试解释页面的东西很有用,除了人类。

这应该有帮助:http://www.w3.org/International/articles/language-tags/

创建语言标记时的黄金法则是使标记尽可能短。避免使用区域、脚本或其他子标记,除非它们添加了有用的区分信息。例如,将ja用于日语而不是ja-JP,除非有特殊原因您需要说这是日本使用的日语,而不是其他地方。

下面的列表显示了可用的各种类型的子标记。我们将在以下各节中逐步完成这些以及如何使用它们。

语言-扩展-

脚本-区域-变体-扩展-私有使用

您可以使用任何国家/地区代码,是的,但这并不意味着浏览器或其他软件会识别它或因此而做任何不同的事情。例如,如果屏幕阅读器仅支持英语中的美国口音,则屏幕阅读器可能会以相同的方式处理"en-US"和"en-GB"。不过,另一个具有两种不同声音的软件可以根据国家/地区代码进行调整。

> RFC 3066 提供了允许值的详细信息(添加了强调和链接):

所有 2 个字母的子标签均被解释为 ISO 3166 alpha-2 国家/地区代码从 [ISO 3166] 开始,或随后由 ISO 3166 维护部门分配机构或管理标准化机构,表示其所属地区这种语言变体与此相关。

我将其解释为任何有效的(根据ISO 3166)2字母代码都可以作为子标签有效。RFC 继续指出:

带有 3 到 8 个字母的第二个子标签的标签可以注册IANA,根据本文档第 5 章中的规则。

顺便说一下,这看起来像是一个错字,因为第3章似乎与注册过程有关,而不是第5章。

快速搜索 IANA 注册机构会显示一个很长的列表,其中包含所有可用的语言子标签。以下是列表中的一个例子(将用作en-scouse):

类型:变体

子标签:祸害

描述: 祸害

已添加: 2006-09-18

前缀:英文

评论:英语利物浦方言被称为"Scouse"

各种各样的子标签可用;快速滚动已经揭示了fr-1694acad(17世纪的法语)。

<小时 />

当涉及到设计用于在浏览器中显示的文档时,其中一些(我会说其中绝大多数)标签的有用性是有限的。W3C 国际化规范简单地指出:

浏览器和其他应用程序可以使用有关该语言的信息向用户提供最适当信息的内容,或以最合适的方式向用户呈现信息。越多内容被正确标记和标记,越有用和普遍这样的应用程序将成为。

我正在努力查找有关浏览器在遇到不同语言标签时的行为方式的详细信息,但它们很可能会为那些使用屏幕阅读器的用户提供一些好处,屏幕阅读器可以使用标签来确定呈现内容的语言/方言/口音。

XML 架构要求在使用 xml:lang(和其他 xml 命名空间值)之前声明和导入 xml 命名空间RELAX NG 预先声明 xml 命名空间,就像在 XML 中一样,因此不需要额外的声明。

嗯,第一个问题很简单。有许多en(英语),但(大部分)只有一种美国英语。有人会猜测有en-CNen-GBen-AU。 猜猜甚至可能有奥地利英语,但这比是的更多。

最新更新