Un horodatage est une prose pour les gens et un fait pour les machines, et une chaîne nue n'est que le premier d'entre eux. L’élément temps comporte les deux, ce qui en fait une formidable économie de balisage.

<time datetime="2026-10-20T10:35+08:00">Oct 20, 2026</time>

Ce que porte l'attribut

  • datetime accepte les dates du calendrier, les dates-heures locales avec un décalage et les durées ; le texte visible reste humain et peut dire n'importe quoi.
  • Les durées utilisent la même syntaxe, donc une recette ou une durée d'enregistrement peut être marquée comme PT2H30M alors que la page affiche 2h 30m.
  • Les dates sans année, comme un anniversaire, utilisent le formulaire à deux tirets que la spécification définit exactement pour ce cas.

Qui le lit réellement

Les widgets de tri, les filtres d'archives et les agents qui résument une page préfèrent tous une valeur analysée plutôt que de la prose, et les consommateurs de données structurées bénéficient lorsque la valeur alimente un bloc de schéma. Rien de tout cela n’a besoin de JavaScript, ce qui est plutôt le problème : le modèle de données est livré sous forme de balisage.

Écrivez le texte visible pour le lecteur et l'attribut pour la machine, et ne laissez jamais l'un mentir au nom de l'autre. Pour cinq minutes de travail, le gain est très intéressant : chaque horodatage sur un site devient un fait triable et citable.