哪个语言属性是正确的?

Which Language Attribute is Correct?

我敢肯定这个问题已经被问过一百万次了,我也用谷歌搜索了几次,但我在这里苦苦挣扎,需要你的帮助。

哪个 HTML5 LANG 属性是正确的? en-US 或 en_US?

例如;

<html lang="en-US">

<html lang="en_US">

非常感谢您的意见

规范使用破折号 - 作为分隔符来指定 language-extlanghttp://www.w3.org/International/articles/language-tags/ 所以:

<html lang="en-US">

指定语言时几乎总是这样。例外情况是像 Django 这样的框架,它们可能会在后端使用 _ 而不是。

来自the spec

A language tag is composed from a sequence of one or more "subtags", each of which refines or narrows the range of language identified by the overall tag. Subtags, in turn, are a sequence of alphanumeric characters (letters and digits), distinguished and separated from other subtags in a tag by a hyphen ("-", [Unicode] U+002D)

所以en-US是正确的..

根据 BCP 47(RFC 5646 和 RFC 4647)"en-US" 似乎是正确的。

它指的是 IANA Language Subtag and Language Tag Extensions 注册管理机构。

我建议你应该参考最佳实践。