标签是 html5 中专为机器可读时间信息设计的语义化元素,必须使用 iso 8601 格式的 datetime 属性(如 2024-03-15 或 2024-03-15t14:30:00+08:00),内容文本可面向人类本地化显示,datetime 属性不可省略。

<time></time> 标签是 HTML5 中专为**机器可读时间信息**设计的语义化元素。用它包裹符合 ISO 8601 标准的日期字符串(如 2024-03-15 或 2024-03-15T14:30:00Z),能让搜索引擎、屏幕阅读器、日历应用等准确识别并解析时间含义,而不依赖上下文或视觉样式。
必须使用合法的 ISO 8601 格式
浏览器和解析工具只信任严格合规的格式。常见有效写法包括:
-
<time datetime="2024-03-15">2024年3月15日</time>(仅日期) -
<time datetime="2024-03-15T14:30:00+08:00">下午2:30</time>(带时区的完整时间) -
<time datetime="2024-W11-5">本周五</time>(ISO 周日期,较少用但合法)
⚠️ 错误示例:datetime="15/03/2024"、datetime="2024年3月" 或省略 datetime 属性——这些无法被可靠解析。
datetime 属性是关键,内容文本可自定义
datetime 属性提供机器可读值,标签内文本则面向人类阅读,两者可以不同:
- 机器读取
datetime值用于索引、排序、提醒等 - 页面显示内容可本地化、简洁或带修饰,如
<time datetime="2024-03-15">昨天</time> - 不写
datetime属性时,浏览器会尝试从内容文本中提取,但成功率低且不可靠
配合 Schema.org 或微数据进一步增强语义
单独用 <time></time> 已有基础效果,若需更强结构化数据支持(如富摘要、事件卡片),可叠加语义标记:
- 用
itemprop="startDate"标记活动开始时间(配合itemscope itemtype="https://schema.org/Event") - 在 JSON-LD 脚本中复用同一
datetime值,确保多源一致性 - 搜索结果中,正确标记的
<time></time>可能触发“时间筛选”或“已过期提示”等体验
实际建议与注意事项
落地时注意几个实用细节:
- 服务端生成页面时,优先输出标准化
datetime值,避免前端 JS 拼接导致格式错误 - 对用户输入的时间,先转换为 ISO 字符串再塞进
datetime,别直接用new Date().toString() - 时区尽量显式声明(如
+08:00或Z),避免解析成本地时区引发歧义 - 可用 W3C Markup Validator 检查
<time></time>使用是否合规
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











