Ces types de zones sont tous une spécialisation de l'élément input.

Les éléments d'interfaces fournis par les navigateurs (calendriers, horloges) ne sont pas encore standardisés.

Dates

Exemple : zone de saisie date

La zone est faite avec l'élément input dont l'attribut type a la valeur date. L'élément input est un élement vide (ie sans balise de fermeture).

zone de saisie date dans Chrome

L'interface de la zone de saisie offre de nombreuses possibilités. La saisie directe de la date est possible, elle est guidée et seuls des nombres peuvent être saisis.
Les compteurs jour, mois et années sont indépendants : quand on est le 31 décembre et qu'on incrémente le jour de 1, on ne passe pas au 1er janvier de l'année suivante mais au 1er décembre et l'année ne change pas.

La zone doit avoir un attribut name dont la valeur doit être unique parmi toutes les zones composant le formulaire.

Attribut possible Utilité
autocomplete Autocomplétion. Les saisies précédemment faites dans la zone sont proposées. Attribut booléen.
autofocus 1er élément activé dans le formulaire. Attribut booléen.
dirname Direction du texte saisi.
disabled Zone désactivée, non transmise au serveur. Aucune interaction n'est possible avec la zone (pas de focus, pas de copie, etc). Attribut booléen.
form id du formulaire associé si la zone n'est pas un élément form ou concerne un autre formulaire que celui dans lequel elle est imbriquée.
list id de la liste de suggestions associée à la zone.
max Valeur maximale acceptée. De la forme aaaa-mm-jj.
min Valeur minimale acceptée. De la forme aaaa-mm-jj.
name Nom de la zone.
readonly Zone en lecture seule, transmise au serveur. La zone peut avoir le focus et le contenu peut être copié. Attribut booléen.
required Zone obligatoire. Attribut booléen.
step Valeur du pas d'incrément/décrément. Entier positif.
value Valeur initiale de la zone (de la forme aaaa-mm-jj) et valeur transmise au serveur après saisie (de la forme aaaa-mm-jj).

Toutes les dates utilisées comme valeur d'attribut doivent être au format aaaa-mm-jj (4 chiffres pour l'année, 1 tiret, 2 chiffres pour le mois, 1 tiret, 2 chiffres pour le jour).

Il est possible de limiter la date saisie dans un intervalle donné avec les attributs min et max.

L'attribut step n'est pas pris en compte bien qu'il fasse partie des spécifications.

En cas de saisie directe de la date, si celle-ci est erronée (exemple 30 février), un message d'erreur est affiché automatiquement par le navigateur et l'envoi du formulaire est bloqué.
Le texte du message, sa mise en forme et son positionnement ne sont pas gérés par le code HTML mais par le navigateur.

Utilisez l'exemple suivant pour tester ces fonctionnalités.

Exemple : zone de saisie date

Mois

Exemple : zone de saisie mois

La zone est faite avec l'élément input dont l'attribut type a la valeur month. L'élément input est un élement vide (ie sans balise de fermeture).

zone de saisie mois dans Chrome

L'interface de la zone de saisie offre de nombreuses possibilités. La saisie directe du mois est possible et elle est guidée. Pour le mois on peut saisir le numéro du mois ou son nom (autocomplétion) et pour l'année, seuls des nombres peuvent être saisis.
Les compteurs mois et années sont indépendants : quand on est en décembre et qu'on incrémente le mois de 1, on ne passe pas en janvier de l'année suivante mais on revient en janvier de l'année affichée.

La zone doit avoir un attribut name dont la valeur doit être unique parmi toutes les zones composant le formulaire.

Attribut possible Utilité
autocomplete Autocomplétion. Les saisies précédemment faites dans la zone sont proposées. Attribut booléen.
autofocus 1er élément activé dans le formulaire. Attribut booléen.
dirname Direction du texte saisi.
disabled Zone désactivée, non transmise au serveur. Aucune interaction n'est possible avec la zone (pas de focus, pas de copie, etc). Attribut booléen.
form id du formulaire associé si la zone n'est pas un élément form ou concerne un autre formulaire que celui dans lequel elle est imbriquée.
list id de la liste de suggestions associée à la zone.
max Valeur maximale acceptée. De la forme aaaa-mm.
min Valeur minimale acceptée. De la forme aaaa-mm.
name Nom de la zone.
readonly Zone en lecture seule, transmise au serveur. La zone peut avoir le focus et le contenu peut être copié. Attribut booléen.
required Zone obligatoire. Attribut booléen.
step Valeur du pas d'incrément/décrément. Entier positif.
value Valeur initiale de la zone (de la forme aaaa-mm) et valeur transmise au serveur après saisie (de la forme aaaa-mm).

Toutes les mois utilisés comme valeur d'attribut doivent être au format aaaa-mm (4 chiffres pour l'année, 1 tiret, 2 chiffres pour le mois).

Il est possible de limiter le mois saisi dans un intervalle donné avec les attributs min et max.

L'attribut step n'est pas pris en compte bien qu'il fasse partie des spécifications.

En cas de saisie directe et de limites, si la valeur saisie est hors limites, un message d'erreur est affiché automatiquement par le navigateur et l'envoi du formulaire est bloqué.
Le texte du message, sa mise en forme et son positionnement ne sont pas gérés par le code HTML mais par le navigateur.

Utilisez l'exemple suivant pour tester ces fonctionnalités.

Exemple : zone de saisie mois

Semaines

Exemple : zone de saisie semaine

La zone est faite avec l'élément input dont l'attribut type a la valeur week. L'élément input est un élement vide (ie sans balise de fermeture).

zone de saisie semaine dans Chrome

L'interface de la zone de saisie offre de nombreuses possibilités. La saisie directe est possible, elle est guidée et seuls des nombres peuvent être saisis.
Les compteurs semaines et années sont indépendants : quand on est semaine 52 et qu'on incrémente la semaine de 1, on ne passe pas en semaine 1 de l'année suivante mais on revient en semaine 1 de l'année affichée.

La zone doit avoir un attribut name dont la valeur doit être unique parmi toutes les zones composant le formulaire.

Attribut possible Utilité
autocomplete Autocomplétion. Les saisies précédemment faites dans la zone sont proposées. Attribut booléen.
autofocus 1er élément activé dans le formulaire. Attribut booléen.
dirname Direction du texte saisi.
disabled Zone désactivée, non transmise au serveur. Aucune interaction n'est possible avec la zone (pas de focus, pas de copie, etc). Attribut booléen.
form id du formulaire associé si la zone n'est pas un élément form ou concerne un autre formulaire que celui dans lequel elle est imbriquée.
list id de la liste de suggestions associée à la zone.
max Valeur maximale acceptée. De la forme aaaa-Wss.
min Valeur minimale acceptée. De la forme aaaa-Wss.
name Nom de la zone.
readonly Zone en lecture seule, transmise au serveur. La zone peut avoir le focus et le contenu peut être copié. Attribut booléen.
required Zone obligatoire. Attribut booléen.
step Valeur du pas d'incrément/décrément. Entier positif.
value Valeur initiale de la zone (de la forme aaaa-Wss) et valeur transmise au serveur après saisie (de la forme aaaa-Wss).

Toutes les semaines utilisées comme valeur d'attribut doivent être au format aaaa-Wss (4 chiffres pour l'année, 1 tiret, la lettre majuscule W, 2 chiffres pour le numéro de l'année).

Il est possible de limiter la semaine saisie dans un intervalle donné avec les attributs min et max.

L'attribut step n'est pas pris en compte bien qu'il fasse partie des spécifications.

En cas de saisie directe et de limites, si la valeur saisie est hors limites, un message d'erreur est affiché automatiquement par le navigateur et l'envoi du formulaire est bloqué.
Le texte du message, sa mise en forme et son positionnement ne sont pas gérés par le code HTML mais par le navigateur.

Utilisez l'exemple suivant pour tester ces fonctionnalités.

Exemple : zone de saisie semaine

Heures

Exemple : zone de saisie heure

La zone est faite avec l'élément input dont l'attribut type a la valeur time. L'élément input est un élement vide (ie sans balise de fermeture).

L'interface de la zone de saisie est simple, avec saisie automatique par incrément, ou saisie directe guidée. Le nombre d'heures étant limité à 23, cette zone ne peut pas toujours être utilisée pour afficher un temps passé plutôt qu'un heure de la journée.
Les compteurs heures, minutes et secondes sont indépendants : quand on est à 23h59 et qu'on incrémente les minutes de 1, on ne passe pas à 24h00 mais on revient à 23h00.

La zone doit avoir un attribut name dont la valeur doit être unique parmi toutes les zones composant le formulaire.

Attribut possible Utilité
autocomplete Autocomplétion. Les saisies précédemment faites dans la zone sont proposées. Attribut booléen.
autofocus 1er élément activé dans le formulaire. Attribut booléen.
dirname Direction du texte saisi.
disabled Zone désactivée, non transmise au serveur. Aucune interaction n'est possible avec la zone (pas de focus, pas de copie, etc). Attribut booléen.
form id du formulaire associé si la zone n'est pas un élément form ou concerne un autre formulaire que celui dans lequel elle est imbriquée.
list id de la liste de suggestions associée à la zone.
max Valeur maximale acceptée. De la forme HH:MM ou HH:MM:SS.
min Valeur minimale acceptée. De la forme HH:MM ou HH:MM:SS.
name Nom de la zone.
readonly Zone en lecture seule, transmise au serveur. La zone peut avoir le focus et le contenu peut être copié. Attribut booléen.
required Zone obligatoire. Attribut booléen.
step Valeur du pas d'incrément/décrément. Entier positif.
value Valeur initiale de la zone (de la forme HH:MM ou HH:MM:SS) et valeur transmise au serveur après saisie (de la forme HH:MM ou HH:MM:SS).

Toutes les heures utilisées comme valeur d'attribut doivent être au format HH:MM ou au format HH:MM:SS (2 chiffres pour l'heure, le caractère :, 2 chiffres pour les minutes, le caractère :, 2 chiffres pour les secondes).

C'est l'attribut step qui définit le format de la zone.

Il est possible de limiter la semaine saisie dans un intervalle donné avec les attributs min et max.

En cas de saisie directe et de limites, si la valeur saisie est hors limites, un message d'erreur est affiché automatiquement par le navigateur et l'envoi du formulaire est bloqué.
Le texte du message, sa mise en forme et son positionnement ne sont pas gérés par le code HTML mais par le navigateur.

Utilisez l'exemple suivant pour tester ces fonctionnalités.

Exemple : zone de saisie heure

Date et heure

Exemple : zone de saisie date et heure

La zone est faite avec l'élément input dont l'attribut type a la valeur datetime-local ou datetime. L'élément input est un élement vide (ie sans balise de fermeture).

La différence entre datetime-local et datetime se trouve dans la représentation de l'heure qui pour datetime devrait contenir aussi le fuseau horaire de la donnée. datetime n'est implémenté par aucun navigateur.

L'interface de la zone de saisie joint l'interface de saisie date et l'interface de saisie time. Reportez vous aux parties précédentes de cette page pour les détails.

La zone doit avoir un attribut name dont la valeur doit être unique parmi toutes les zones composant le formulaire.

Attribut possible Utilité
autocomplete Autocomplétion. Les saisies précédemment faites dans la zone sont proposées. Attribut booléen.
autofocus 1er élément activé dans le formulaire. Attribut booléen.
dirname Direction du texte saisi.
disabled Zone désactivée, non transmise au serveur. Aucune interaction n'est possible avec la zone (pas de focus, pas de copie, etc). Attribut booléen.
form id du formulaire associé si la zone n'est pas un élément form ou concerne un autre formulaire que celui dans lequel elle est imbriquée.
list id de la liste de suggestions associée à la zone.
max Valeur maximale acceptée. De la forme aaaa-mm-jjTHH:MM ou aaaa-mm-jjTHH:MM:SS.
min Valeur minimale acceptée. De la forme aaaa-mm-jjTHH:MM ou aaaa-mm-jjTHH:MM:SS.
name Nom de la zone.
readonly Zone en lecture seule, transmise au serveur. La zone peut avoir le focus et le contenu peut être copié. Attribut booléen.
required Zone obligatoire. Attribut booléen.
step Valeur du pas d'incrément/décrément. Entier positif.
value Valeur initiale de la zone (de la forme aaaa-mm-jjTHH:MM ou aaaa-mm-jjTHH:MM:SS) et valeur transmise au serveur après saisie (de la forme aaaa-mm-jjTHH:MM ou aaaa-mm-jjTHH:MM:SS).

Toutes les dates/heures utilisées comme valeur d'attribut doivent être au format aaaa-mm-jjTHH:MM ou au format aaaa-mm-jjTHH:MM:SS (4 chiffres pour l'année, 1 tiret, 2 chiffres pour le mois, 1 tiret, 2 chiffres pour le jour, le caractère T majsucule, 2 chiffres pour l'heure, le caractère :, 2 chiffres pour les minutes, le caractère :, 2 chiffres pour les secondes).

Comme avec type=time, c'est l'attribut step qui définit si la zone affichera les secondes ou pas.

Il est possible de limiter la semaine saisie dans un intervalle donné avec les attributs min et max.

En cas de saisie directe et de limites, si la valeur saisie est hors limites, un message d'erreur est affiché automatiquement par le navigateur et l'envoi du formulaire est bloqué.
Le texte du message, sa mise en forme et son positionnement ne sont pas gérés par le code HTML mais par le navigateur.

Utilisez l'exemple suivant pour tester ces fonctionnalités.

Exemple : zone de saisie date et heure