是不是像HTML一样关闭HTML 5中的标记?

时间:2011-09-10 06:11:09

标签: html html5 xhtml w3c

是否没有必要像HTML一样关闭HTML 5中的标记?或者它是W3C验证器中的错误

为什么此代码在W3C验证器中有效

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>title</title>
    <link rel="stylesheet" href="style.css">
    <script src="script.js"></script>
  </head>
  <body>
<p>Some Text
  </body>
</html>

如果它在HTML5中真的有效,我会感到惊讶。但是,在HTML5中保持此行为有效是否有任何好处。 HTML5创建者是否认为更严格的XHTML规则对Web不利?

3 个答案:

答案 0 :(得分:9)

该标记确实有效。 <p> tags don't have to be closed in HTML 4.01 or HTML5.我不确定您认为HTML5需要像XHTML一样关闭所有内容。

HTML5只是具有额外新功能的常规HTML(因此版本从4.01跳到5)。它绝不是源于XHTML。您可以关闭所有HTML5代码,使其看起来像格式良好的XML,但规范并非要求

答案 1 :(得分:7)

  

HTML5创建者认为更严格的XHTML规则并不适合   网络

差不多,是的。

他们的观点是,它只会让创建网页变得更难。 HTML已经取得了巨大的成功,因为几乎任何人都可以创建一个可用的网页而根本不知道任何HTML。开始时这是一个非常小的学习曲线,人们可以在它们准备就绪时进行构建。

如果你需要了解很多迂腐规则才能开始,那么很多人都不会打扰,HTML也不会那么成功。

答案 2 :(得分:0)

<p>元素的结束标记保留在大多数情况下是有效的,尽管有一些不是。 exact rules at the World Wide Web Consortium是:

  

如果 p 元素后面紧跟addressarticle,{{3},则可以省略 p 元素的结束标记},aside,目录,blockquotedivdlfieldsetfooterform,{{3} },h1h2h3h4h5h6headerhrmenu,p,navolpresection元素,或者如果父元素中没有其他内容且父元素为不是table元素。

因此,例如,以下内容无效:

<a href="http://example.com><p>This paragraph is unclosed</a>

但这是有效的:

<div class="news"><p>Something important happened!</div>

HTML从不要求<p>标记被关闭 - 它始终是可选的。您可以关闭HTML标记,使其看起来像格式良好的XHTML,但这不是必需的。 XHTML比HTML更严格。