我正在尝试将Schema.org标记添加到我的HTML中。具体来说,我想根据these examples标记一些事件。虽然这些例子很有用,但它们也有些不完整,例如:没有证明使用表演者/表演者的属性。
在我的特定情况下,每个事件都表示为一个表行。在添加Schema.org属性之前,标记如下所示:
<tr id="459">
<td class="nameCol">
<a href="/summer-festivals/show/459/film/dublin-chinese-film-festival-2013">Dublin Chinese Film Festival 2013</a>
</td>
<td class="typeCol">Film</td>
<td class="startCol">1 Feb 2013</td>
<td class="endCol">9 Feb 2013</td>
<td class="addressCol">Lighthouse Cinema, Smithfield Square, Dublin 7</td>
<td class="countryCol">Ireland</td>
</tr>
在第一次尝试添加Schema.org属性后,它看起来像这样:
<tr id="459" itemscope itemtype="http://schema.org/Event">
<td class="nameCol">
<a href="/summer-festivals/show/459/film/dublin-chinese-film-festival-2013" itemprop="url">Dublin Chinese Film Festival 2013</a>
</td>
<td class="typeCol">Film</td>
<td class="startCol">
<meta itemprop="startDate" content="2013-02-01">
1 Feb 2013
</td>
<td class="endCol">
<meta itemprop="endDate" content="2013-02-09">
9 Feb 2013
</td>
<span itemprop="location" itemscope itemtype="http://schema.org/Place">
<span itemprop="geo" itemscope itemtype="http://schema.org/GeoCoordinates">
<meta itemprop="latitude" content="53.3482"/>
<meta itemprop="longitude" content="-6.27794"/>
</span>
<td class="addressCol">Lighthouse Cinema, Smithfield Square, Dublin 7</td>
<span itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<td class="countryCol" itemprop="addressCountry">Ireland</td>
</span>
</span>
</tr>
这有一些问题:
在Schema.org示例中,每个事件的根始终为<div>
,但在我的情况下,它是<tr>
,是否允许?
我想在Schema.org标记中包含一些实际上未向用户显示的数据(例如纬度,经度)。目前,我通过在表格单元格之间添加额外的<span>
来实现此目的,但这不是有效的HTML。
同样,我需要将国家/地区单元格包装在<span>
中,以便从Schema.org POV中正确标记它。但是,标记随后从HTML POV变为无效。
答案 0 :(得分:1)
关于1:您可以在任何 HTML元素上使用微数据属性。是的,您可以使用td
元素。这些示例始终使用div
/ span
,因为它始终有效。最好使用现有标记,而不是添加新的div
/ span
元素。
关于2:也许itemref
attribute可以在这方面提供帮助吗?
[...]它仅仅是一种语法结构,可以帮助作者向要注释的数据不符合方便树结构的页面添加注释。例如,它允许作者在表中标记数据,以便每列定义一个单独的项,同时保持单元格中的属性。
关于3:为什么不将span
包裹在td
中?
<td class="countryCol" itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<span itemprop="addressCountry">Ireland</span>
</td>