Menu

Retour à la ligne en HTML : la balise br et les coupures

Utilisez <br> pour commencer une nouvelle ligne dans un bloc de texte. Découvrez quand <br> convient et quand un paragraphe vaut mieux, comment conserver les sauts de ligne d'un texte, comment laisser les mots longs se couper avec <wbr> et comment empêcher une ligne de se couper.

Cette page contient des éditeurs exécutables - modifiez, exécutez et voyez la sortie instantanément.

Comment faire un retour à la ligne

Placez <br> là où la nouvelle ligne doit commencer. C'est un élément vide, il n'a donc pas de balise fermante :

L'adresse se coupe exactement à chaque <br>. Le second paragraphe reste sur une seule ligne alors que le code source contient un saut de ligne : HTML traite les sauts de ligne, les tabulations et les suites d'espaces comme une seule espace. C'est pour cela que <br> existe.

<br>, <br/> et <br /> produisent tous le même élément. Utilisez celui de votre projet (JSX et XHTML exigent la barre oblique).

br ou p : un retour à la ligne n'est pas un espacement

Un <br> termine une ligne à l'intérieur du même paragraphe. Un nouveau <p> commence un nouveau paragraphe, avec de l'espace au-dessus et en dessous grâce aux marges par défaut. Empiler des <br> pour créer de l'espace fonctionne, mais c'est fragile et cela dit la mauvaise chose :

Les deux boîtes se ressemblent, mais pour un lecteur d'écran la première est un seul paragraphe, et changer l'espacement oblige à modifier chaque page. Dans la seconde, l'écart tient en une ligne de CSS.

Les bons usages de <br> : les adresses, les poèmes et paroles de chansons, et les lignes d'une signature, là où le retour à la ligne appartient au texte. Pour tout le reste, utilisez des paragraphes, des listes ou des titres.

Conserver les sauts de ligne de votre texte

Quand un texte vient d'ailleurs (un champ de commentaire, une base de données, un script), il contient de vrais caractères de saut de ligne au lieu de balises <br>. La propriété CSS white-space: pre-line fait afficher ces sauts de ligne comme des retours à la ligne :

La même chaîne s'affiche sur une ligne dans la boîte grise et sur trois lignes dans la bleue. C'est aussi plus sûr que d'insérer des balises <br> dans un texte utilisateur avec innerHTML, ce qui permettrait aux utilisateurs d'injecter du HTML. Pour garder aussi les espaces et l'indentation, utilisez white-space: pre, présenté sur la page espace en HTML.

Laisser les mots longs se couper : wbr

Un mot long ou une URL sans espaces peut déborder d'une boîte étroite. <wbr> marque un endroit où le navigateur peut couper la ligne s'il en a besoin, et ne fait rien sinon :

Le premier chemin sort de sa boîte ; le second se coupe aux points <wbr>. Pour un texte que vous ne maîtrisez pas, la propriété CSS overflow-wrap: anywhere coupe plutôt les mots longs n'importe où.

Empêcher une ligne de se couper

Parfois vous voulez l'inverse : garder « 10 km » ou un numéro de téléphone ensemble. Deux outils :

&nbsp; est une espace où le navigateur ne coupera pas la ligne, donc « 10 » et « km » restent ensemble. white-space: nowrap garde tout un span sur une seule ligne. Remplacez &nbsp; par une espace normale, ou retirez la classe, et à cette largeur les deux se coupent sur deux lignes.

Erreurs fréquentes

  • Appuyer sur Entrée dans le code source en attendant une nouvelle ligne. En HTML, les sauts de ligne sont des espaces. Utilisez <br>, des éléments séparés ou white-space: pre-line.
  • Empiler <br><br><br> pour espacer. Utilisez des paragraphes et margin.
  • Utiliser <br> pour construire une liste. Utilisez <ul> ou <ol> avec <li>, que les lecteurs d'écran annoncent comme une liste.
  • Écrire </br>. Ce n'est pas valide. Écrivez <br>.
  • Ajouter des <br> à un texte utilisateur avec innerHTML. Définissez textContent et utilisez plutôt white-space: pre-line.

Questions fréquentes

Comment faire un retour à la ligne en HTML ?

Insérez <br> là où la nouvelle ligne doit commencer : Line one<br>Line two. Appuyer sur Entrée dans votre fichier HTML ne marche pas, car les navigateurs traitent les sauts de ligne du code source comme de simples espaces.

Faut-il écrire <br>, <br/> ou <br /> ?

Les trois fonctionnent en HTML et produisent le même élément. <br> est la forme HTML simple ; les versions avec barre oblique sont acceptées pour la compatibilité avec XHTML et JSX. </br> seul est invalide, même si les navigateurs le lisent comme un retour à la ligne de plus.

Quand utiliser <br> plutôt que <p> ?

Utilisez <br> quand le retour à la ligne fait partie du contenu lui-même, comme dans une adresse ou un poème. Utilisez des éléments <p> distincts pour des paragraphes distincts, et la marge CSS pour l'espacement, plutôt que d'empiler des balises <br>.

Comment garder les sauts de ligne d'un texte sans ajouter de balises <br> ?

Donnez à l'élément white-space: pre-line en CSS. Le navigateur affiche alors chaque saut de ligne du texte comme un retour à la ligne, tout en réduisant les espaces en trop. C'est pratique pour les commentaires d'utilisateurs et le texte chargé en JavaScript.

Comment empêcher un retour à la ligne en HTML ?

Entourez le texte d'un élément avec white-space: nowrap, ou reliez deux mots par une espace insécable &nbsp; pour qu'ils restent toujours sur la même ligne.

Coddy programming languages illustration

Apprendre à coder avec Coddy

COMMENCER