【问题标题】:HTML5 empty <time> tag for date of publication发布日期的 HTML5 空 <time> 标记
【发布时间】:2014-06-08 08:59:57
【问题描述】:

我对 HTML5 &lt;time&gt; 语义标签感到困惑。在我看来,它用于标记诸如“今天”、“去年圣诞节”、“10.10.2010”、“2am”等字符串,以帮助机器识别和理解它们。我可以在 HTML5 Doctor 和 W3C 页面上找到的所有有效示例如下:

<p>I have a date on <time datetime="2008-02-14">Valentines day</time>.</p> 

<p>We open at <time>10:00</time> every morning.</p>



但是如果我想设置文章发布日期(例如帮助 Google 机器人),但没有任何字符串显示呢?是否有效:

<article><time datetime="..."></time> content </article>

或:

<article><time datetime="..." /> content </article>

或者我应该以其他方式做到这一点?

(在我看来,&lt;time datetime="..."&gt;...&lt;/time&gt; 和 CSS display:none 用于 time 选择器……)

【问题讨论】:

  • 你的意思是如果你在&lt;article /&gt;中包含了一个&lt;time datetime="..." pubdate="pubdate"&gt;&lt;/time&gt;空标签,那么datetime的值仍然会被用作那篇文章的发布日期?
  • ^ 请注意,pubdate 可能无效。我在规格中找不到它了(这在之前改变了几次)。
  • 是的,pubdate 已被弃用。

标签: datetime time html


【解决方案1】:

time 元素包含机器可读(datetime 属性)和人类可读(文本内容)格式的日期时间值。

time 元素的日期时间值是元素的 datetime 内容属性的值(如果有的话)或元素的 textContent 的值(如果没有的话)。

WHATWG

所以如果datetime 属性不存在,则会从文本内容中解析出日期时间值。

如果存在datetime 属性,您可以随意在文本内容中写入任何内容,或者在您的情况下不写入任何内容。

【讨论】:

  • 那么&lt;time datetime="..." /&gt; 在这种情况下是否正确?
  • 据我了解 - 是的。
猜你喜欢
  • 1970-01-01
  • 2020-02-19
  • 2016-04-24
  • 1970-01-01
  • 2013-09-27
  • 2011-06-23
  • 1970-01-01
  • 2017-01-24
  • 2013-12-06
相关资源
最近更新 更多