在HTML5中关闭空元素和其他xhtml标准

时间:2018-07-25 16:58:28

标签: html html5 xhtml

XHTML 出现时,我转向遵循与所有人一样的所有必要规则,关闭空标签:

<meta />
<br />
<img />

始终使用小写字母,始终将属性值放在引号中,避免属性最小化:

checked="checked"

...等等。

现在,由于据我所知迁移到 HTML5 ,您仍然可以在HTML5中使用这些相同的标准,因为HTML4内的XHTML 或XHTML HTML5中,基本上意味着您仍可以在HTML5中利用XHTML的规则-两者都不是。

现在,我之所以这么说是因为我开始怀疑我一直在使用的xmlns元素的html属性,即:xmlns="http://www.w3.org/1999/xhtml"

现在,据我所知,引入 XHTML 已成为一项要求,但我仍在 HTML5 中继续使用它。

所以我的问题是,如果我想继续在 HTML5 中使用XHTML的标准,我是否必须继续将此属性插入我的html元素中? / p>

...如果是的话,我会假设如果我编码了<br>这样的错误的 XHTML ,那么它将像以前一样无效?

1 个答案:

答案 0 :(得分:1)

客观地

在HTML 5中,并非严格要求关闭某些标签,使用小写的属性和值以及避免属性最小化。但是,无论您执行与否,标记都将有效。

与所有以前的版本一样,HTML 5不允许imgbr和其他自闭元素的结尾元素标记,而只是容忍这些作为错误恢复的一部分而已,规范。

HTML 5不需要引用DTD(文档类型定义)。这是因为HTML 5不再基于SGML。出于兼容性原因,浏览器无法将HTML 5解析为SGML。

此外,HTML 5(如HTML 4)不能包含xmlns(XML名称空间)属性,因为它的标记没有描述XML。

对于XHTML5规范也有一个答案。简而言之,XHTML被HTML5所取代,现在仅指语法。此外,您仍然可以在XML序列化模式下使用HTML5。为此,文档必须用作application/xhtml+xml

主观

您不必扔掉所学的方法,而是编写有效的XHTML。不再需要避免属性最小化,但是关闭空标签并始终使用小写字母可以极大地改变代码的可读性,具体取决于团队的偏好。