HTML5是否有效的XML?

我很困惑。 一位同事使我对那个标签结束的可能性/><br />仍然可以在HTML5中使用。 我以为只有<br> -style都可以使用。 所有互联网上的“谈话”都是关于使用后者。

有人可以向我解释这个吗? 这似乎很混乱,记录不完整。

这引出了另一个问题:HTML 5是否被认为是格式良好的XML?


否。反例:

这些是有效的HTML5,但无效的XHTML5:

  • 一些结束标签可以省略:

    <p>First
    <p>Second
    

    请参阅:HTML中不需要P-end-tag(</ p>)

  • script逃脱魔术:

    <script><a></script>
    

    请参阅:什么是HTML中的CDATA?

  • 没有值的属性(布尔属性):

    <input type="text" disabled />
    

    请参阅:禁用属性的正确值

  • 不带引号的属性,例如:

    <div data-a=b></div>
    

    请参阅:在XHTML 1.0中,严格属性值需要用引号括起来吗?

  • 隐式开放元素和多个顶级元素。

    一些HTML元素是隐式创建的。 例如html 。 这允许HTML具有“多个顶级元素”:

    <!doctype html><title>a</title><p>a</p>
    

    请参阅:是否需要编写HEAD,BODY和HTML标记?

  • 有效的XHTML无效HTML:

  • CDATA内部构造有无效标签

  • ENTITY和其他惊叹号结构,这让人们笑了起来:十亿亿笑XML DoS攻击工作如何?

  • 有效的HTML和XHTML但含义不同:

  • HTML拥有数百命名字符引用(例如&pound;&copy; ),XML仅具有5( quotampaposltgt )。

  • 它有一个XML序列化,称为XHTML5。 基本上,您可以自由使用HTML5(HTML序列化)或XHTML5(XML序列化)。 规范草案说HTML5“是为大多数作者所建议的格式”,主要是出于同样的原因,人们推荐使用XHTML 1.1的text/html


    您可以将您的网页标记为有效的HTML5和XHTML5:http://www.w3.org/TR/html-polyglot/

    符合一组明确定义的约束的多边形标记被解释为兼容的,无论它们是按照HTML5规范处理为HTML还是XHTML。

    基本文件可能如下所示:

    <!DOCTYPE html>
    <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
      <head>
        <title></title>
      </head>
      <body>
      </body>
    </html>
    

    当然,你必须遵循一些附加规则(比如不使用noscript元素),在链接工作草案中列出。

    链接地址: http://www.djcxy.com/p/15685.html

    上一篇: Is HTML5 valid XML?

    下一篇: What about Line Breaks in Jade?