W3docs

Balise HTML <html>

La balise <html> définit un document écrit en HTML. Elle contient tous les éléments de base d'un document HTML.

La balise <html> est l'élément racine d'un document HTML — elle se trouve tout en haut de l'arbre du document et englobe tous les autres éléments de la page. « Racine » signifie qu'elle n'a pas d'élément parent : lorsque le navigateur analyse votre page pour construire le DOM (Document Object Model, l'arbre de nœuds qu'il génère en mémoire), l'élément <html> est le seul nœud dont tous les autres descendent. Comme tout y est contenu, la balise <html> est également l'endroit où vous définissez des attributs à l'échelle de la page, comme la langue et le sens du texte du document.

Le seul élément pouvant apparaître avant <html> est la déclaration <!DOCTYPE>, qui indique au navigateur quelle version de HTML le document utilise et l'active en mode standard.

L'élément <html> possède exactement deux enfants directs, qui doivent apparaître dans cet ordre :

  • La balise <head>, qui contient les métadonnées destinées au navigateur et aux moteurs de recherche — les balises <title>, <link>, <script> et autres. Rien dans <head> n'est affiché directement sur la page.
  • La balise <body>, qui contient tout ce que le visiteur voit réellement : texte, images, liens, etc.
Astuce

Définissez toujours l'attribut lang sur <html>. Il indique au navigateur, aux moteurs de recherche et aux technologies d'assistance dans quelle langue la page est rédigée. Cela améliore l'indexation, aide les navigateurs à choisir les bonnes polices et le bon rendu pour les caractères nationaux, et permet aux lecteurs d'écran de sélectionner la prononciation et la voix appropriées.

Balise HTML <html> avec l'attribut "lang"

<html lang="en">

L'attribut lang

La valeur de lang est une balise de langue BCP 47 — un code court et standardisé pour une langue humaine. La forme la plus courante est un sous-tag de langue à deux lettres (selon ISO 639), suivi optionnellement d'un sous-tag de région ou de script séparé par un tiret.

<html lang="en">          <!-- English -->
<html lang="en-US">       <!-- English, United States -->
<html lang="fr">          <!-- French -->
<html lang="de">          <!-- German -->
<html lang="zh-Hans">     <!-- Chinese, Simplified script -->
<html lang="zh-Hant">     <!-- Chinese, Traditional script -->
<html lang="ar">          <!-- Arabic -->

Définissez lang une seule fois sur <html> pour déclarer la langue principale du document. Si une section de la page est dans une autre langue, vous pouvez la surcharger sur n'importe quel élément interne (par exemple <p lang="fr">).

L'attribut dir

L'attribut dir définit la direction de base du texte du document. Il est essentiel pour les langues qui se lisent de droite à gauche, comme l'arabe et l'hébreu.

ValeurSignification
ltrDe gauche à droite (valeur par défaut ; utilisée pour l'anglais, le français, etc.)
rtlDe droite à gauche (utilisée pour l'arabe, l'hébreu, le persan)
autoLaisser le navigateur décider en fonction du contenu
<html lang="ar" dir="rtl">

Définir dir="rtl" sur <html> inverse l'alignement par défaut de la page, de sorte que le texte, les barres de défilement et de nombreuses fonctionnalités de mise en page s'adaptent correctement aux écritures de droite à gauche.

Syntaxe

La balise <html> fonctionne en paires. Tout le contenu de la page est écrit entre la balise ouvrante <html> et la balise fermante </html>.

En HTML5, la balise fermante </html> est techniquement facultative — l'analyseur peut déduire la fin du document. Cependant, vous devez toujours l'inclure. Un </html> explicite maintient la structure du document claire, évite les surprises lorsque la page est traitée par des outils, et est requis si la page est servie en XHTML.

Exemple de la balise HTML <html> :

Balise HTML <html>

<!DOCTYPE html>
<html lang="en">
   <head>
      <title>Title of the document</title>
   </head>
   <body>
      The content of the page
   </body>
</html>

Modifiez l'exemple ci-dessus dans l'éditeur et exécutez-le pour voir le résultat dans votre navigateur.

« Essayez vous-même » n'est pas disponible pour cet exemple.

Attributs

AttributValeurDescription
langBalise de langue BCP 47Déclare la langue principale du document (par exemple en, fr, zh-Hans). Recommandé sur chaque page pour l'accessibilité et le SEO.
dirltr / rtl / autoDéfinit la direction de base du texte. Utilisez rtl pour les langues s'écrivant de droite à gauche, comme l'arabe et l'hébreu.
idtexteAttribue un identifiant unique à l'élément, principalement utilisé comme point d'accroche pour CSS ou les scripts.
xmlnshttps://www.w3.org/1999/xhtmlEspace de noms XML du document. Requis uniquement pour XHTML ; ignoré lorsque la page est servie en text/html, donc inutile en HTML5.
manifestURLPointait vers un manifeste de cache d'application pour la consultation hors ligne. Obsolète — supprimé du standard ; utilisez les service workers à la place.

Les attributs lang, dir et id ci-dessus sont les plus couramment utilisés, et <html> accepte également l'ensemble des Attributs globaux et des Attributs d'événement.

Pratique

Pratique
Quel est le rôle de l'élément HTML html ?
Quel est le rôle de l'élément HTML html ?
Was this page helpful?