2010-06-01 8 views
6

Dans les autres navigateurs sauf IE7 et inférieur, le hr affiche une bordure autour de la balise hr que je ne veux pas.Hr Tag dans IE - supprime la bordure

<!--[if lte IE 7]> 
<style type="text/css"> 
hr { 
    margin: -3px 0 0 0; 
    padding: 0; 
    height: 19px; 
    border: none; 
    outline: none; 
    background: url("img/split.png") center no-repeat; 
} 
</style> 
<![endif]--> 

J'ai essayé cette solution, mais elle semble toujours entourée d'une bordure.

Il ressemble à ceci:

alt text http://i46.tinypic.com/dpdabm.jpg

Comment puis-je me débarrasser de lui?

+2

"Nouvelles"? Cela ressemble à un en-tête, il suffit donc d'appliquer un arrière-plan en haut de celui-ci, ou en bas de l'élément qui le précède. – reisio

+1

Je voterais aussi contre l'utilisation des ressources humaines pour ce genre de solutions. – f13o

Répondre

4

Pour éviter ces problèmes, vous pouvez utiliser des balises DIV à la place. Afin de le rendre accessible, mettre HR à l'intérieur comme celui-ci:

<div class="ruler"><hr /></div> 

puis appliquer des styles à elle:

.ruler { border-top: 1px solid black; } 

.ruler hr { display: none; } 

Cela permet de masquer les ressources humaines et faire de la DIV une « règle horizontale ».

1

Différents navigateurs ont différents modèles pour l'élément 'hr'. C'est pourquoi j'utilise ceci:

hr { 
height: 1px; 
color: #ccc; 
background-color: #ccc; 
border: 0; 
} 

Cela fonctionne sur tous les principaux navigateurs. Il n'y a qu'un seul problème: IE7 et les marges ...

+0

+1 Oui, 'IE' est toujours un problème, d'une façon ou d'une autre. – Wh1T3h4Ck5