137 votes

ligne horizontale et bonne façon de la coder en html, css

Je dois dessiner une ligne horizontale après un bloc, et j'ai trois façons de le faire :

1) Définir une classe h_line et y ajouter des fonctionnalités css, comme

#css
.hline { width:100%; height:1px; background: #fff }

#html
<div class="block_1">Lorem</div> <div class="h_line"></div>

2) Utiliser hr étiquette

#css
hr { width:100%; height:1px; background: #fff }

#html
<div class="block_1">Lorem</div> <hr />

3) l'utiliser comme un after pseudo-classe

#css
.hline:after { width:100%; height:1px; background: #fff; content:"" }

#html
<div class="block_1 h_line">Lorem</div>

Quel est le moyen le plus pratique ?

164voto

moettinger Points 1060
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

<div>Hello</div>
<hr/>
<div>World</div>

Voici comment html5boilerplate le fait :

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

67voto

Nico Points 13021

J'opterais pour un balisage sémantique, j'utiliserais une <hr/> .

À moins que vous ne souhaitiez simplement une bordure, vous pouvez alors utiliser une combinaison de padding, de border et de margin, pour obtenir le périmètre souhaité.

13voto

Nadeem Qasmi Points 123
.line {
  width: 53px;
  height: 0;
  border: 1px solid #C4C4C4;
  margin: 3px;
  display:inline-block;
}

<html>
<body>
<div class="line"></div>
<div style="display:inline-block;">OR</div>
<div class="line"></div>
</body>
</html>

11voto

Bernhard Poiss Points 2544

En HTML5, le <hr> définit une rupture thématique. En HTML 4.01, la balise <hr> représente une règle horizontale.

http://www.w3schools.com/tags/tag_hr.asp

Donc, après définition, je préférerais <hr>

11voto

user1587329 Points 91

Si vous voulez vraiment un pause thématique vous pouvez utiliser le <hr> étiquette.


Si vous voulez juste une ligne de conception, vous pouvez utiliser quelque chose comme la classe css

.hline-bottom {
    padding-bottom: 10px;
    border-bottom: 2px solid #000; /* whichever color you prefer */
}

et l'utiliser comme

<div class="block_1 hline-bottom">Cheese</div>

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