OVH Cloud OVH Cloud

MSIE : display:block et retour à la ligne intempestif

7 réponses
Avatar
Marc Zirnheld
J'ai constaté (à mes dépens) un phénomène curieux avec MSIE 6.0, qui ne
se produit pas avec Firebird:
dans une liste, certains item comportent un lien, et seulement un lien;
ce lien a l'attribut display:block. Ceci produit un saut de ligne juste
après.

Attribuer l'attribut display:block à l'entité a n'était peut-être pas la
meilleure idée, mais c'est la seule combinaison que j'aie trouvée pour
faire changer la couleur du fond de toute la case par un a:hover.

Le code ci-dessous reproduit le phénomène, j'ai supprimé tout le
superflu.


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head></head>
<body>

<STYLE type="text/css">
li{color:red}
ul{display:block;}
a{display:block;}
a:hover{background-color:#ff8000;}
</STYLE>

<ul>
<li><a href="">item avec lien</a></li>
<li>item sans lien</li>
<li>item sans lien</li>
<li>item sans lien</li>
<li><a href="">item avec lien</a></li>
<li><a href="">item avec lien</a></li>
<li>item sans lien</li>
</ul>

</body>
</html>

7 réponses

Avatar
B. MARTIN
Marc Zirnheld a écrit :
J'ai constaté (à mes dépens) un phénomène curieux avec MSIE 6.0, qui ne
se produit pas avec Firebird:
dans une liste, certains item comportent un lien, et seulement un lien;
ce lien a l'attribut display:block. Ceci produit un saut de ligne juste
après.

Attribuer l'attribut display:block à l'entité a n'était peut-être pas la
meilleure idée, mais c'est la seule combinaison que j'aie trouvée pour
faire changer la couleur du fond de toute la case par un a:hover.

Le code ci-dessous reproduit le phénomène, j'ai supprimé tout le
superflu.


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html>
<head></head>
<body>

<STYLE type="text/css">
li{color:red}
ul{display:block;}
a{display:block;}
a:hover{background-color:#ff8000;}
</STYLE>

<ul>
<li><a href="">item avec lien</a></li>
<li>item sans lien</li>
<li>item sans lien</li>
<li>item sans lien</li>
<li><a href="">item avec lien</a></li>
<li><a href="">item avec lien</a></li>
<li>item sans lien</li>
</ul>

</body>
</html>


Tu as oublié les : après le a
a: {display:block;}

--
Bernard MARTIN
http://www.america-dreamz.com
http://www.amtechindustrie.com
Avatar
Marc Zirnheld
D'apres "B. MARTIN" ,
dans le forum fr.comp.infosystemes.www.navigateurs...

Tu as oublié les : après le a
a: {display:block;}



Pardon ???
Avatar
B. MARTIN
Marc Zirnheld a écrit :
D'apres "B. MARTIN" ,
dans le forum fr.comp.infosystemes.www.navigateurs...


Tu as oublié les : après le a
a: {display:block;}




Pardon ???




Effectivement, c'est une connerie (heure tardive ?). Après moults
essais, j'ai fini par trouver que si tu mets une largeur à "a"
a {display: block; width: 100%;}
le problème disparait. Je n'ai pas d'explication.


--
Bernard MARTIN
Avatar
Marc Zirnheld
D'apres "B. MARTIN" ,
dans le forum fr.comp.infosystemes.www.navigateurs...

Après moults
essais, j'ai fini par trouver que si tu mets une largeur à "a"
a {display: block; width: 100%;}
le problème disparait. Je n'ai pas d'explication.



Bien vu, en effet.

Le phénomène disparait également si on supprime le saut de ligne après
le </li>.
Avatar
Christophe PEREZ
Le Sun, 22 Feb 2004 10:23:36 +0100, B. MARTIN a écrit:

Effectivement, c'est une connerie (heure tardive ?). Après moults
essais, j'ai fini par trouver que si tu mets une largeur à "a"
a {display: block; width: 100%;}
le problème disparait. Je n'ai pas d'explication.



Je me greffe sur votre fil car j'ai(avais) un problème similaire, avec un
<dl><dt>...
Du coup, je me suis à nouveau mis à rechercher l'erreur avec votre
"logique", mais le fait de fixer la largeur à 100% pour l'élément ne
changeait rien pour moi.
Par contre, je me suis rendu contre qu'en supprimant le width du <div>
grand-parent de cet élément, le saut de ligne disparaissait...

Si ça peut servir à quelqu'un d'autre ;-)
En tout cas, moi, votre discussion m'a servi alors merci :-).

--
Christophe PEREZ
Écrivez moi sans _faute !
Avatar
Christophe PEREZ
Le Sun, 22 Feb 2004 13:31:25 -0400, Christophe PEREZ a écrit:

Par contre, je me suis rendu contre qu'en supprimant le width du <div>
grand-parent de cet élément, le saut de ligne disparaissait...



Pfff... le problème c'est que c'est incompatible avec le overflow: hidden
sur ce même grand-parent... :-(

Si ça peut servir à quelqu'un d'autre ;-)



Même pas à moi...

--
Christophe PEREZ
Écrivez moi sans _faute !
Avatar
Marc Zirnheld
D'apres Christophe PEREZ ,
dans le forum fr.comp.infosystemes.www.navigateurs...

Pfff... le problème c'est que c'est incompatible avec le overflow: hidden
sur ce même grand-parent... :-(



Condoléances !