有效的 XHTML:"itemscope" 不是为任何属性指定的组的成员

Valid XHTML: "itemscope" is not a member of a group specified for any attribute

我正在尝试将我的文档验证为 XHTML 1.0 Transitional (W3C)。我有以下错误:

"itemscope" 不是为任何属性指定的组的成员

对应这段代码:

<body class="innerpage" itemscope itemtype="http://schema.org/Physician">

<body class="innerpage" itemscope itemtype="http://schema.org/Physician">
<!-- Facebook Conversion Code for Leads -->
<script type="text/javascript" src="js/face.js"></script>
   </body>
</html>

如何解决?

谢谢!

不幸的是,这是不可能的,因为 http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd knows nothing about those attributes (itemscope, itemtype). You can convince yourself by downloading that file 到您的计算机并试图在该文档中查找 (Ctrl+F) 单词 itemscopeitemtype。您将得到 0 个结果。

基本上,从这里开始您有 2 个选择:

  1. 如果您想继续使用itemscopeitemtype属性您 必须切换到 HTML5 文档类型,那么您的文档看起来像 如下:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Title</title>
    </head>
    <body class="innerpage" itemscope itemtype="http://schema.org/Physician">
    <p>Content</p>
    </body>
    </html>
    

这将导致:

This document was successfully checked as HTML5!

  1. 如果您需要保留 XHTML 文档类型定义,那么您必须从微数据切换到 RDF,您的文档将如下所示:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.1//EN"
        "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-2.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title>Title</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    </head>
    <body class="innerpage" vocab="http://schema.org/" typeof="Physician">
    <p>Content</p>
    </body>
    </html>
    

这将导致:

This document was successfully checked as -//W3C//DTD XHTML+RDFa 1.1//EN!