Comment dessiner une ligne pointillée avec CSS?


98

Comment puis-je dessiner une ligne pointillée avec CSS?

Réponses:


131

Par exemple:

hr {
  border:none;
  border-top:1px dotted #f00;
  color:#fff;
  background-color:#fff;
  height:1px;
  width:50%;
}

Voir aussi Styliser <hr>avec CSS .


3
Comme IE 6 (je ne me souviens pas pour IE7) ne comprendra pas le style "pointillé", vous pouvez lui dire d'utiliser "pointillé" à la place, en utilisant bien sûr des commentaires conditionnels pour viser IE6 et aucun autre navigateur.
FelipeAls

hauteur: 0px; fonctionne sur Chrome car les bordures sont séparées de la hauteur.
Ben

Vous devez comprendre que les lignes pointillées et pointillées peuvent être différentes dans de nombreux navigateurs. C'est plus lié aux lignes pointillées.
Rantiev

18
<style>
    .dotted {border: 1px dotted #ff0000; border-style: none none dotted; color: #fff; background-color: #fff; }
</style>
<hr class='dotted' />

16

Utilisation du HTML:

<div class="horizontal_dotted_line"></div>

et dans styles.css:

.horizontal_dotted_line{
  border-bottom: 1px dotted [color];
  width: [put your width here]px;
} 

13

La réponse acceptée a beaucoup de cruauté qui n'est plus nécessaire pour les navigateurs modernes. J'ai personnellement testé le CSS suivant sur tous les navigateurs depuis IE8, et cela fonctionne parfaitement.

 hr {
    border: none;
    border-top: 1px dotted black;
  }

border: nonedoit venir en premier, pour supprimer tous les styles de bordure par défaut que les navigateurs appliquent aux hrbalises.



7

cette ligne devrait fonctionner pour vous:

<hr style="border-top: 2px dotted black"/>

4
.myclass {
    border-bottom: thin red dotted;
}

C'est une ligne pointillée et non pointillée.
rahul

Fixé. Je mélangeais pointillé et pointillé. De plus, ma réponse vous aurait donné une frontière entière plutôt qu'une seule ligne.
Graeme Perrow

3

J'ai essayé toutes les solutions ici et aucune n'a donné une ligne 1px propre. Pour y parvenir, procédez comme suit:

border: none; border-top: 1px dotted #000;

Alternativement:

 border-top: 1px dotted #000; border-right: none; border-bottom: none; border-left: none;

3

utiliser comme ceci:

<hr style="border-bottom:dotted" />

3

Pour ce faire, vous devez simplement ajouter un border-topou border-bottomà votre <hr/>balise comme suit:

<hr style="border-top: 2px dotted navy" />

avec n'importe quel type de ligne ou couleur que vous voulez


3

Ajoutez l'attribut suivant à l'élément que vous souhaitez avoir en pointillé.

style="border-bottom: 1px dotted #ff0000;"

2

En utilisant hrcréé deux lignes pour moi, une solide et une en pointillé.

J'ai trouvé que cela fonctionnait assez bien:

div {
border-top: 1px dotted #cccccc;
color: #ffffff;
background-color: #ffffff;
height: 1px;
width: 95%;
}

De plus, comme vous pouvez faire de la largeur un pourcentage, il y aura toujours de l'espace de chaque côté (même lorsque vous redimensionnez la fenêtre).



1

Dooted ligne après élément:

http://jsfiddle.net/korigan/ubtkc17e/

HTML

<h2 class="dotted-line">Lorem ipsum</h2>

CSS

.dotted-line {
  white-space: nowrap;
  position: relative;
  overflow: hidden;
}
.dotted-line:after {
  content: "..........................................................................................................";
  letter-spacing: 6px;
  font-size: 30px;
  color: #9cbfdb;
  display: inline-block;
  vertical-align: 3px;
  padding-left: 10px;
}
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.