我有一个代表我的业务开放时间的定义列表:
<dl>
<dt>Monday - Friday</dt>
<dd>8:30am to 5:30pm</dd>
<dt>Saturday - Sunday</dt>
<dd>9:00am to 5:00pm</dd>
<dt>Holidays</dt>
<dd>Closed</dd>
</dl>这似乎是安排这些内容的一种很好的、结构化的方式。但也许我错了?
我想知道如何使用time元素来表示营业时间?
最终,我打算做这样的事情:
<time itemprop="openingHours" datetime="Mo,Tu,We,Th,Fr 8:30-17:30">Monday - Friday, 8:30am to 5:30pm</time>但是由于dt标记中的星期和dd中的小时,我不确定正确的标记方法是什么?两个不同的time标记似乎是错误的。
发布于 2014-10-02 18:45:37
使用Microdata,您不需要对HTML标记进行“注释”。标记仅用作载体。在Microdata使用者解析了页面之后,HTML和Microdata项之间就没有关系了。
所以你实际上有两个问题:
HTML5
HTML5问题很简单:您可以将time元素用于日期、时间、时区偏移或持续时间等所有内容。因此,您的dl可能如下所示:
<dl>
<dt>Monday - Friday</dt>
<dd><time datetime="08:30">8:30am</time> to <time datetime="17:30">5:30pm</time></dd> <!-- could also use a duration string instead, or an additional time element; but probably doesn’t make much sense in this context -->
<dt>Saturday - Sunday</dt>
<dd><time datetime="09:00">9:00am</time> to <time datetime="17:00">5:00pm</time></dd>
<dt>Holidays</dt>
<dd>Closed</dd>
</dl>Schema.org与微数据
现在看一下schema.org的openingHours property的定义,我们看到没有强制的内容格式:“of can be specified as…”(强调我的)。
然而,他们记录/推荐的语法是invalid HTML5:time element不能有像"Mo,Tu,We,Th,Fr 8:30-17:30“或"Mo-Su”(我创建了一个issue)这样的日期时间值。
因此,如果您想使用这种文档格式,就不应该使用time元素。相反,您可以
data element及其value属性:…
如果愿意,您可以使用它来包装相应dt或dd的内容。
您可能希望改用openingHoursSpecification OpeningHoursSpecification→。
https://stackoverflow.com/questions/26146893
复制相似问题