我想知道xml:lang属性做了什么,它在HTML5中的值是什么。并且xml:lang属性是否有任何限制?有人能解释一下xml:lang属性在HTML5中的作用吗?
回答
由于标准草案在3.2.3.3 The lang
and xml:lang
attributes中解释,它是标准lang
属性的XML变体,用于指定文档的自然语言。它可以取任何由BCP47定义的值。但请注意,如果您拥有XML文档或者还要定义lang
属性,则只能使用xml:lang
属性,而在后一种情况下,它们必须具有相同的值。这是因为xml:lang
仅允许简化旧XHTML文档的转换:
作者不得在HTML文档的HTML元素的XML名称空间中使用lang属性。为了简化XHTML之间的迁移,作者可以在没有名称空间的情况下指定一个没有前缀的属性,并在HTML文档中的HTML元素上使用文本本地名“xml:lang”,但只有在没有名称空间中的lang属性时才能指定这些属性也是指定的,并且这两个属性在用ASCII不区分大小写的方式进行比较时必须具有相同的值。
xml:lang
是XML属性,因此,你应该只在XHTML文档,而不是HTML文档中使用它。 其中人类可读语言的内容是写在
xml:lang
指定
要了解xml:lang
属性,你需要熟悉的两个不同的语法HTML5,the HTML syntax and the XHTML syntax:
有各种具体的语法 可用于传输使用此抽象语言的资源 ,其中两个 在此 规范中定义。
第一个这样的具体语法是 HTML语法。这是大多数作者建议的格式 。它是 与大多数传统Web兼容的浏览器。如果文档通过HTML MIME type(例如
text/html
)被传送 ,那么它将通过Web浏览器作为HTML文档处理 。 本规范定义了最新的 HTML语法,简称为“HTML”。第二个具体语法是 XHTML语法,它是XML的应用程序 。当文档被与XML MIME type发送 ,如
application/xhtml+xml
,那么它是 作为XML文档被Web浏览器 处理,以由XML 处理器进行解析。提醒作者 XML和HTML 的处理有所不同;特别是即使是较小的 语法错误也会阻止标记为XML的文档 完全呈现为 ,而在HTML语法中它们将被忽略 。本规范 定义了最新的XHTML语法,简称为“XHTML”,简称为 。DOM,HTML语法和XML 不能全部表示相同的内容。 例如,使用HTML语法表示名称空间不能为 ,但在DOM和 XML中支持它们。同样,使用HTML语法可以将使用
noscript
功能的文档表示为 ,但不能使用DOM或XML表示 。 包含字符串“-->
” 的注释只能在DOM中表示, 不在HTML和XML语法中。
HTML语法是您可能使用的语法;它更容忍错误,XHTML语法本身不受IE的支持。
In the HTML syntax,xml:lang
属性是没有意义的。它什么都不做。如果要设置语言,请使用lang
属性,该属性也适用于XHTML语法。使用lang
属性将指定该元素及其子元素的默认语言,可用于选择要使用哪种字体(您可以使用:lang()
CSS选择器自行控制它)。在HTML语法中,只有同时提供lang
属性并且具有相同的值时才允许包含xml:lang
属性;这可以确保不会因它们的不同而产生混淆,并且lang
属性是浏览器实际关注的属性。
在XHTML语法中,xml:lang
属性的语义为defined by the XML specification。当确定一段文本的语言时,在XHTML中,xml:lang
属性先例,但如果它不存在,则lang
属性用于确定语言(用于字体选择和:lang()
CSS选择器)。
最好只使用lang
属性。这将在您可能使用的HTML语法中工作,如果您使用该语法,则使用XHTML语法。如果您必须使用完全不了解HTML的任何XML工具处理代码,并且需要定义语言,则可以使用lang
属性和xml:lang
属性具有相同的值,以确保所有工具都将看到相同的语言。
的可能值,对于lang
和xml:lang
,是BCP47 language tags如塞尔维亚写在拉丁文字en-US
的美式英语,或sr-Latn-RS
在塞尔维亚使用。有关更多详细信息,请参阅BCP47规范。
- 1. 有人可以解释HTML5中的contextmenu属性吗?
- 2. 有人可以解释HTML5 aria- *属性吗?
- 3. 有人能解释一下这个程序的工作吗?
- 4. PHP引用,奇怪的现象,有人能解释一下吗?
- 5. 有人能解释一下“ecdh_tmp_cb”回调的用法吗?
- 6. 有人可以解释一下吗?
- 7. 有人能解释一下这些ApacheBench结果的含义吗?
- 8. 有人能解释一下这个node.js代码的含义吗?
- 9. 有人能解释一下EmberJS Fastboot的特别之处吗?
- 10. 有人能解释一下去年的reddit漏洞吗?
- 11. 有人能解释下面的代码示例中'r'对象的作用吗?
- 12. 有人能解释一下这意味着什么吗?
- 13. CSS box-shadow:有人能解释一下Bootstrap中使用的简短语法吗?
- 14. 有人能解释一下这个while循环是如何工作的吗?
- 15. 有人能解释一下这个RSpec存根是如何工作的吗?
- 16. 有人可以解释方法属性上的Python hasattr/delattr吗?
- 17. 有人可以解释一下VIEWS&JOIN在SQL Server中的工作原理吗?
- 18. 有人可以解释一下com.google.inject的用途吗?
- 19. 有人可以解释一下Java中的Function对象吗?
- 20. 有人能解释矩阵(Mr.Anderson)吗?
- 21. 有人可以解释在XHTML5中使用了xml:base属性么?
- 22. 可能有人向我解释下面的os.fork()例子吗?
- 23. 有人能解释我下面的例子吗?
- 24. 有人可以解释这个C#静态类属性吗?
- 25. 如何有效地使用xml:lang属性?
- 26. 有人能解释一下自我功能在numpy中使用什么
- 27. 你能解释一下“django.contrib.auth”对我的作用吗?
- 28. 你能解释一下这个javascript代码的作用吗?
- 29. 有人可以解释吗?
- 30. 有人可以解释这个Objective-C属性声明的每一个字吗?
我认为这对于随便的读者来说是值得澄清的:你的答案和引用块的最后一句特别适用于“HTML文档”。但请注意,符合HTML5的文档可能不是HTML文档!阅读下面的所有答案以获取更多详细信息。 – 2014-04-10 19:49:58