HTML5 time元素是用于定义页面的日期和时间的语义元素。

基本的time元素

time元素包含2个部分的日期信息。一个部分是给机器阅读的,另一个部分是给人阅读的。下面是一个简单的time元素的示例代码:

2015年10月1日

如上面的示例代码中,datetime属性中给出的日期是给机器阅读的。而给人阅读的日期是写在标签之间的部分。

如果你只需要使用机器能阅读的日期,可以将日期写在标签之间,而不写datatime属性,例如下面的样子:

2015-10-01

在2011年的时候,time元素曾经被从HTML5规范中移除。但是后面经过一些更新之后,有被从新添加到HTML5规范中。

日期格式

time元素的日期格式必须是下面列出的几种格式中的一种:

YYYY-MM-DDTHH:MM:SS.SSS+ZHZM

YYYY-MM-DDTHH:MM:SS.SSS-ZHZM

YYYY-WXX

上面的日期格式的含义如下:

字母代码

描述

YYYY

使用4个数字指定的年份,例如:2015

MM

使用2个数字指定的月份,例如:09或12,月份必须在01-12之间

WXX

使用2个数字指定的一年中的星期数,例如01或51。星期数必须在01-53之间

DD

使用2个数字指定的天数,例如01或31。天数必须在01-31之间

T

字母T用于表明在日期之后包含一个时间串。也可以使用一个空格来代替字母T

HH

使用2个数字来指定的小时数,小时数必须在00-23之间

MM

使用2个数字指定的分钟数,分钟数必须在00-59之间

SS

使用2个数字指定的秒数,秒数必须在00-59之间

SSS

使用3个数字指定的毫秒数,毫秒数必须在000-999之间

-ZHZM

以UTC(Coordinated Universal Time)为标准的时区偏移。使用+或-来指定,然后使用4个数字的小时和分钟(HHMM)来作为偏移值。

+ZHZM

以UTC(Coordinated Universal Time)为标准的时区偏移。使用+或-来指定,然后使用4个数字的小时和分钟(HHMM)来作为偏移值。

这些选项的某些部分是可选的。例如,你可以不使用时间部分,苗和毫秒也是可选的。如果你使用了时间部分,必须指定时区。

下面列出了日期时间格式的一些例子:

日期时间格式

例子

YYYY

2015

YYYY-MM

2015-09

YYYY-MM-DD

2015-09-09

YYYY-WXX

2015-W35

MM-DD

09-10

YYYY-MM-DDTHH:MM-ZHZM

2015-09-10T23:59-0500

YYYY-MM-DDTHH:MM:SS-ZHZM

2015-09-10T23:59:59-0500

YYYY-MM-DDTHH:MM:SS.SSS+ZHZM

2015-09-10T23:59:59:999+0200

YYYY-MM-DDTHH:MM:SS.SSS-ZHZM

2015-09-10T23:59:59:999-0500

指定持续时间

我们还可以使用time元素来指定一个持续时间,而不是一个精确的时间。要指定一个持续时间,可以在一个time元素中的datatime属性中使用一个P前缀,然后在它的后面添加时间的单位。这里的时间单位使用1个字母来表示,例如:

上面的例子表示持续一天的时间。

持续时间的单位可以是:

单位

描述

D

H

小时

M

分钟

S

你不可以指定月为单位,因为月的天数是不固定的。这会导致用于计算时间到位的秒数值不一样,因此不可以使用月为单位。

上面的持续时间的写法也可以将各个字母之间使用空格来间隔开,便于阅读:

如果你在P之后使用T,你可以更精确的指定持续时间:

上面的例子表示持续时间为12小时34分钟59秒。

注意上面写法中空格的使用。你还可以像下面这样来书写持续时间:

pubdate属性

time元素的pubdate属性指明这个时间是不是一篇文章的发表时间。

下面是一个例子:

2015年9月10日

注意,你不需要为pubdate属性指定true或false值。像上面这样书写,就表示这个时间是一个发表时间。

下面是一个在article元素中使用time元素的示例代码:

这是最后一次流星撞击地球。

2015年9月10日

上面的元素是否需要嵌入到一个p元素中并没有硬性的规定。