292 votes

Comment modifier la hauteur d'un <br> ?

J'ai un grand paragraphe de texte qui est divisé en sous-paragraphes avec des noms de domaines. <br> 's :

<p>
  Blah blah blah.
  <br/>
  Blah blah blah. Blah blah blah. Blah blah blah.
  <br/>
  Blah blah blah.
</p>

Je veux élargir l'écart entre ces sous-paragraphes, comme s'il y avait deux <br> ou quelque chose comme ça. Je sais que la bonne façon de faire est d'utiliser <p></p> Mais pour l'instant, je ne peux pas modifier cette mise en page, et je cherche donc une solution uniquement en CSS.

J'ai essayé de régler <br> 's line-height y height con display: block J'ai également fait des recherches sur Google et sur Stack Overflow, mais je n'ai pas trouvé de solution. Est-ce possible sans modifier la mise en page ?

0 votes

Votre mise en forme peut ajouter à la confusion en pensant que les balises br ont une valeur de hauteur. Comme indiqué ci-dessous, il s'agit simplement de sauts de ligne. Avez-vous essayé de faire quelque chose de similaire dans votre traitement de texte ?

0 votes

Changer la hauteur de <br> est sémantiquement incorrect. <br> signifie que vous venez de mettre une autre ligne à votre texte et le paragraphe unique devrait avoir une hauteur de ligne fixe. Si un certain texte est séparé, il devrait être un paragraphe séparé.

296voto

Duroth Points 2066

Css :

br {
   display: block;
   margin: 10px 0;
}

Cette solution n'est probablement pas compatible avec tous les navigateurs, mais elle a le mérite d'exister. Vous pouvez également envisager de définir line-height :

line-height:22px;

Pour Google Chrome, envisager réglage content :

content: " ";

Sinon, je pense que vous êtes coincé avec une solution JavaScript.

35 votes

Cela ne fonctionne PAS dans : IE7, Opera10, Chrome2. Dans Firefox, cela crée une marge de taille double. Vous devez spécifier margin-top: 10px;

0 votes

Je ne pense pas non plus que ça devrait être stylisable. Peut-être est-ce un bug de Gecko ?

8 votes

Ajouter un content:" " à ce style et cela fonctionne bien dans Chrome.

76voto

htmldrum Points 688

Voici la solution correcte qui en fait est compatible avec tous les navigateurs :

  br {
        line-height: 150%;
     }

2 votes

Pas IE7 pour autant que je puisse dire.

40 votes

Ceci fonctionne pour augmenter la hauteur d'un saut de ligne, mais pas diminution de il.

3 votes

@htmldrum Lorsque vous n'avez pas la possibilité de modifier le HTML mais seulement le CSS, cela fonctionne très bien. Merci ! Ceci devrait être upvoté et considéré comme la bonne réponse. Je pense.

42voto

Simon Smith Points 197

Un autre moyen consiste à utiliser un RH . Mais, et c'est là que le bât blesse, rendez-le invisible.

Ainsi :

<hr style="height:30pt; visibility:hidden;" />

Pour faire une pause plus propre BR simulé en utilisant le HR : Btw fonctionne dans tous les navigateurs !!!

{ height:2px; visibility:hidden; margin-bottom:-1px; }

1 votes

J'ai dû ajouter margin:0px pour IE8.

35 votes

Il s'agit d'un abus épouvantable des balises HTML, il est préférable d'utiliser une balise <p></p> avec des marges puis détruire un <hr />

1 votes

Cette astuce est bonne, mais pour obtenir un résultat plus précis, vous devez utiliser margin : 0 et border : 0.

30voto

nigel Points 61

Je viens d'avoir ce problème, et je l'ai contourné en utilisant

 <div style="line-height:150%;">
    <br>
</div>
 

0 votes

Cela fonctionne très bien et permet de contourner les limites de la réponse de @htmldrum.

0 votes

J'aime aussi cela, je l'ai utilisé pour une rupture fine, par exemple 25%. Si le nouveau bloc div provoque un espacement incorrect/irrégulier, utilisez span au lieu de div.

25voto

Michael Borgwardt Points 181658

Pour autant que je sache <br> n'est pas ont une hauteur, il force simplement un saut de ligne. Ce que vous avez, c'est un texte avec des sauts de ligne en plus de ceux de l'auto-wrap, no alinéas. Vous pouvez modifier l'interligne, mais cela affectera toutes les lignes.

2 votes

Il semble qu'il n'y ait vraiment aucun moyen. J'ai même essayé de jouer avec les propriétés :before et :after, mais... :(

2 votes

Je sais que c'est super vieux, mais @Isaac Minogue a une façon valide de le faire. En modifiant le content fait l'affaire.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X