因此我们使用了一些丰富的代码段并使用了html5标记方案。
我们的问题是itemscope属性没有值。
<div itemscope itemtype="http://schema.org/LocalBusiness">
这导致我们的旧产品html验证失败,因为它认为它是一个空标记。如果您为其分配值1,那么google和标记规则的工作方式是否相同。
<div itemscope="1" itemtype="http://schema.org/LocalBusiness">
这是一个现在的工作,直到我们能够正确更新我们的验证方法,但这是一个更远的项目。
所以基本上有一个合适的语法使得它仍然适用于Googles Rich Snippet规则,html5以及html5之前的旧验证引擎吗?
答案 0 :(得分:9)
(此答案基本上是从Peter Murray复制的,特别是这些two comments。)
HTML5规范允许boolean attributes的值为空字符串或属性名称:
如果该属性存在,则其值必须是空字符串或与属性的规范名称ASCII case-insensitive匹配的值,没有前导或尾随空格。
所以要么:
<div itemscope="" itemtype="http://schema.org/LocalBusiness">
或者这个:
<div itemscope="itemscope" itemtype="http://schema.org/LocalBusiness">
是有效的HTML5。
为了确保Google正确识别itemscope="itemscope"
,他(Peter Murray)创建了example page并通过Google's rich snippet validator运行了它。从results,您可以看到Google正确地获取了数据(事件项目)。