37

假设我有以下句子要添加丰富的片段:

我在纽约生活和工作

由于纽约既是我的居住地,也是我工作的城市,理论上我想使用 schema.org 标准像这样标记这条线:

<div itemscope itemtype = 'http://schema.org/Person'>I live and work in 
<span itemprop = 'homeLocation'  itemprop = 'workLocation'>New York</span></div>

在一个跨度标签中有 2 个 itemprops 是否有效?如果没有,下面的工作吗?

<div itemscope itemtype = 'http://schema.org/Person'>I live and work in 
<span itemprop = 'homeLocation'><span itemprop = 'workLocation'>New York
</span></span></div>
4

2 回答 2

57

通常的 HTML 方法是使用一个属性并用空格字符分隔多个值。

查看 Microdata 规范,您会注意到itemprop属性也是如此:

itemprop属性(如果指定)必须具有一个值,该值是一组无序的唯一空格分隔标记[…]

所以这应该是正确的:

<div itemscope itemtype="http://schema.org/Person">
  I live and work in <span itemprop="homeLocation workLocation">New York</span>
</div>

(注意:如果使用itemprop值作为 CSS 选择器,请使用[att~=val]而不是[att=val]。)

于 2013-01-08T13:56:59.127 回答
1

我发布的第一段代码不起作用,但第二段可以。谷歌有一个丰富的片段页面测试器,对于代码验证非常有用

于 2013-01-07T18:48:36.513 回答