Кратко
СкопированоЭлемент <time> служит для разметки дат, времени или периода времени: в содержимое тега идёт формат для человека, а в атрибут datetime версия для машин — поисковому роботу точно понравится 🙂
У <time> есть роль time. Это делает тег полезным не только для поисковых роботов, но и для скринридеров. Вспомогательные технологии не рассказывают пользователям, что это время, но зачитывают содержимое datetime в понятном человеку формате.
Пример
СкопированоТак можно указать конкретную дату:
Дока вышла в релиз <time datetime="2021-10-12">12 октября 2021</time>
Дока вышла в релиз <time datetime="2021-10-12">12 октября 2021</time>
Добавим время и зону:
Челябинский метеорит вошёл в земную атмосферу<time datetime="2013-02-15T09:20+06:00"> 15 февраля 2013 около 09:20</time>
Челябинский метеорит вошёл в земную атмосферу
<time datetime="2013-02-15T09:20+06:00">
15 февраля 2013 около 09:20
</time>
А так можно указать временной интервал:
Самый длинный клип Twenty One Pilots на песню Level of Concern длится<time datetime="117d 16h 10m 25s">177 дней, 16 часов, 10 минут и 25 секунд</time>
Самый длинный клип Twenty One Pilots на песню Level of Concern длится
<time datetime="117d 16h 10m 25s">177 дней, 16 часов, 10 минут и 25 секунд</time>
Как пишется
СкопированоВся магия элемента кроется в атрибуте datetime, который принимает значение формата
YYYY.
YYYY: год 4 цифры (прим. 2009);MM: месяц 2 цифры (прим. 05);DD: день 2 цифры (прим. 04);T: разделитель даты и времени, можно заменить пробелом;hh: часы 2 цифры (прим. 18 для 06.00pm);mm: минуты 2 цифры (прим. 34);ss: секунды 2 цифры (прим. 40);TZD: Обозначение часового пояса (прим. +02:00 для Каира).
<time datetime="2021-07">Солнечный июль</time>
<time datetime="2021-07">Солнечный июль</time>
Который можно опустить, если внутри тега валидное значение атрибута datetime:
<time>2021-07</time>
<time>2021-07</time>
Как понять
СкопированоС датами приходится работать регулярно: напоминания, сообщения, события… Представьте, что браузер или любой другой HTML-интерпретатор сможет распознать существующие даты на странице.
Это позволит:
- добавить событие в календарь;
- автоматически преобразовать дату в пользовательский формат, указанный браузером;
- адаптировать дату и время в соответствии с временной зоной пользователя;
- агрегаторам контента автоматически генерировать временную шкалу событий;
- улучшить доступность даты и времени для считывающих программ;
- поисковикам улучшать результаты выдачи на основе актуальности контента.
Если оборачивать даты в простые блоки <div> или другие элементы, они будут восприниматься интерпретатором как простой текст, без возможности распознания и машинной обработки.
Примеры в машинном формате
СкопированоСодержимое атрибута datetime для машин чаще всего и генерируется машиной, но если вы человек и вам нужно указать его самостоятельно, либо написать скрипт для такого вывода, эти примеры для вас.
Год и месяц
Скопировано2014 — год перед месяцем.
Дата
Скопировано1969 — год, месяц, потом день.
Дата без года
Скопировано12 — месяц перед днём.
Только время
Скопировано14 — час, минуты, потом секунды.
Секунды не обязательно. Доли можно указать тремя цифрами после точки.
Дата и время
Скопировано2013 — комбинация даты и времени, разделяется заглавной T.
Временная зона
Скопировано+06 — начинается с плюса или минуса. Двоеточие не обязательно.
+00:00, или UTC время, можно указать большой буквой Z.
Локальное время и дата
Скопировано2019.
То же самое, что дата и время, только с временной зоной.
Год и неделя
Скопировано2010 — сначала год, потом количество недель после большой W.
Только год
Скопировано1776 — 4 цифры или больше, работает и так 0001, и так 12345.
Длительность (способ 1)
СкопированоP2DT2H30M10 — заглавная P, день (необязательно), заглавная T, дальше необязательные часы, минуты и секунды.
Все буквы должны быть заглавными.
Длительность (способ 2)
Скопировано1w 2d 2h 30m 10 — неделя (w), день (d), час (h), минута (m) и секунда (s).
Буквы могут быть маленькими и большими. Пробелы не обязательны.