Attribut <meta> http-equiv
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since juillet 2015.
L'attribut http-equiv
de l'élément <meta>
permet de fournir des instructions de traitement au navigateur, comme si la réponse ayant retourné le document incluait certains en-têtes HTTP.
Les métadonnées sont des métadonnées au niveau du document qui s'appliquent à toute la page.
Lorsqu'un élément <meta>
possède un attribut http-equiv
, l'attribut content
définit la valeur correspondante de http-equiv
.
Par exemple, la balise <meta>
suivante indique au navigateur de rafraîchir la page après 5 minutes :
<meta http-equiv="Refresh" content="300" />
Valeurs
Seul un sous-ensemble des en-têtes HTTP est pris en charge comme valeurs pour http-equiv
.
Parmi celles-ci :
content-language
Obsolète-
Définit la langue par défaut du document utilisée par les technologies d'assistance ou la mise en forme par le navigateur. Similaire à l'en-tête HTTP
Content-Language
. Utilisez plutôt l'attributlang
. content-type
-
Déclare le type de média (type MIME) et l'encodage des caractères du document. L'attribut
content
doit valoir « text/html; charset=utf-8 » si spécifié. Cela équivaut à un élément<meta>
avec l'attributcharset
et impose la même restriction sur le placement dans le document. Ne peut être utilisé que dans les documents servis avec le type de médiatext/html
— pas dans les documents XML (application/xml
ouapplication/xhtml+xml
). Voir l'en-tête HTTPContent-Type
. content-security-policy
-
Permet à l'auteur·ice de la page de définir une politique de sécurité de contenu (CSP) pour la page courante, généralement pour spécifier les origines autorisées et les points d'accès aux scripts afin de se protéger contre les attaques XSS. Voir l'en-tête HTTP
Content-Security-Policy
. default-style
-
Définit le nom de la feuille de style CSS par défaut.
refresh
-
Équivalent à l'en-tête HTTP
Refresh
. Cette instruction précise :- Le nombre de secondes à attendre avant que la page soit rechargée si l'attribut
content
est un entier positif. - Le nombre de secondes à attendre avant que la page soit redirigée vers une autre URL si l'attribut
content
est un entier positif suivi de;url=
et d'une URL valide.
Le compte à rebours commence lorsque la page est complètement chargée, c'est-à-dire après les événements
load
etpageshow
. Voir Problèmes d'accessibilité pour plus d'informations. - Le nombre de secondes à attendre avant que la page soit rechargée si l'attribut
-
Définit un cookie pour le document. Les navigateurs ignorent désormais cette directive : utilisez l'en-tête HTTP
Set-Cookie
oudocument.cookie
à la place. x-ua-compatible
Obsolète-
Utilisé par les anciennes versions du désormais obsolète Microsoft Internet Explorer pour se conformer au comportement spécifié. Si spécifié, l'attribut
content
doit avoir la valeur « IE=edge ». Les agents utilisateur ignorent désormais cette directive. Le nom provient de l'en-tête HTTPX-UA-Compatible
.
Attention :
Certains navigateurs traitent des en-têtes supplémentaires qui ne sont pas listés ci-dessus.
Comme les en-têtes non reconnus ou les valeurs invalides sont ignorés, cela peut entraîner des comportements incohérents selon les navigateurs.
En particulier, n'utilisez pas d'autres en-têtes de sécurité avec <meta http-equiv=
, cela peut donner un faux sentiment de sécurité !
Problèmes d'accessibilité
Les pages configurées avec la valeur http-equiv="Refresh"
risquent d'utiliser un intervalle de rafraîchissement trop court.
Les personnes utilisant des technologies d'assistance comme les lecteurs d'écran peuvent ne pas avoir le temps de lire et comprendre le contenu avant d'être automatiquement redirigées.
Une mise à jour abrupte et sans avertissement de la page peut également désorienter les personnes en situation de handicap visuel.
Exemples
>Désactiver le code inline non sécurisé et n'autoriser que les ressources HTTPS
Cet élément HTML <meta>
définit la politique CSP par défaut pour n'autoriser le chargement des ressources (images, polices, scripts, etc.) qu'en HTTPS.
Comme les directives unsafe-inline
et unsafe-eval
ne sont pas définies, les scripts inline seront bloqués :
<meta http-equiv="Content-Security-Policy" content="default-src https:" />
Les mêmes restrictions peuvent être appliquées via l'en-tête HTTP Content-Security-Policy
:
Content-Security-Policy: default-src https:
Définir une redirection de page
L'exemple suivant utilise http-equiv="refresh"
pour demander au navigateur d'effectuer une redirection.
L'attribut content="3;url=https://www.mozilla.org"
redirigera la page vers https://www.mozilla.org
après 3 secondes :
<meta http-equiv="refresh" content="3;url=https://www.mozilla.org" />
Spécifications
Specification |
---|
HTML> # attr-meta-http-equiv> |
Compatibilité des navigateurs
Loading…
Voir aussi
<meta name="referrer">
- Métadonnées : l'élément
<meta>
- Prévenir les attaques avec
<meta>
(angl.) sur httparchive.org (2022)