validation - 我可以将来自 HTML5 的微数据添加到 XHTML Strict 站点并且仍然符合要求吗?

标签 validation html breadcrumbs xhtml-1.0-strict microdata

我有一个使用 XHTML 1.0 Strict 编码的站点。我想使用新的微数据将面包屑添加到我的网站(所以 Google will understand them )。

我的旧非微数据标记面包屑看起来像这样:

<ul>
  <li><a href="...">Level 1</a></li>
  <li><a href="...">Level 2</a></li>
  <li><a href="...">Level 3</a></li>
</ul>

根据 Google 的说法,要使用微数据标记面包屑,您可以像这样扩展上面的代码:

<ul>
  <li itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
    <a href="..." itemprop="url">
      <span itemprop="title">Level 1</span>
    </a>
  </li>
  ...
</ul>

但这不是有效的 XHTML 1.0 Strict。

我该怎么办?
我应该忽略验证冲突吗?
我应该写 itemscope="itemscope" 而不仅仅是 itemscope (这将是有效的 XML,但仍然不是有效的 XHTML)?
我应该将 Doctype 更改为 HTML5 而不是 XHTML 1.0 Strict 吗?

我希望它能一直工作到 IE6!

请指教:)

最佳答案

是的,如果你想在 XHTML 中使用 itemscope,你需要编写 itemscope="itemscope" 并使用 XHTML5(与 HTML5 相同的 DOCTYPE,但 XML 语法).

itemscope 不包含在 W3 HTML5 中,但存在于 WHATWG 的版本中,因此验证可能仍然是一个困难。好像有不少political argument关于这个问题,我没有关注它,因为它看起来相当乏味。

目前,如果你想在最终确定的、可验证的文档格式中使用面包屑注释,你可以改用 RDFa:替代(但较旧)提案,这是争论的全部内容,并使用现有的文档类型:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">

关于validation - 我可以将来自 HTML5 的微数据添加到 XHTML Strict 站点并且仍然符合要求吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3659778/

相关文章:

java - 使用 Java DocumentListener 的更智能方式

CSS Validator 提示 justify-content 和 -webkit-animation

javascript - Onclick 事件在第一次点击时不起作用

Java Swing 面包屑组件?

javascript - 在向导表单上使用欧芹(3 个步骤)

javascript - javascript中只有一个url验证的正则表达式

javascript - 如何限制 angular.module ('myApp' ,[ 'ngGrid' , 'ui.bootstrap' , 'kendo.directives' ]);?

html - Bootstrap 4 使网格占据页面其余部分的 100% 高度

angularjs - 导航嵌套组件时创建面包屑 (Angular 2)

c# - 使用 LINQ 创建类似面包屑的层次结构