Menu css : problème au passage du curseur sur le menu avec Internet Explorer 7
Bonjour à tous,
je développe actuellement un site utilisant un menu css. Je rencontre des problème quand au déroulement du menu avec internet explorer :
-IE 6 : le menu se déroule normalement, mais décalage de quelques pixels.
-IE 7 : il est nécessaire de devoir être sur le titre du menu,
le menu ne se déroule pas si on est dans la case du menu (dans la case mais pas sur le titre).
Pour afficher le menu, le curseur doit donc être impérativement sur le titre du menu. Dès que le curseur n'est plus sur le titre, les rubriques disparaissent, ce qui empêche d'accéder aux rubriques.
-IE 8 : le menu fonctionne correctement.
Voici le code du menu css :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111
|
#menu, #menu ul /* Liste */
{
padding : 0;
margin : 0;
list-style : none;
line-height : 21px;
text-align : center;
}
#menu /* Ensemble du menu */
{
margin-left:30px;
margin-top:50px;/*pour separer titre (et logo) du menu*/
/*padding-bottom:90px; */
font-weight : bold;
font-family : Arial;
font-size : 12px;
}
#menu a /* Contenu des listes */
{
display : block; /* on change le type d'élément, les liens deviennent des balises de type block */
padding : 0; /* aucune marge intérieure */
color : #fff; /* couleur du texte */
text-decoration : none; /* on supprime le style par défaut des liens (la plupart du temps = souligné) */
/*
PARAMETRES A AJUSTER
*/
background : #27314a ;/* couleur de fond #BA9F5A */
width : 100px; /* largeur modifie origine 140px*/
height :40px;/*la hauteur des elements du menu 40px*/
}
#menu li /* Elements des listes */
{
float : left;
/* pour IE qui ne reconnaît pas "transparent" */
border-right : 1px solid #fff; /* on met une bordure blanche à droite de chaque élément */
height :auto;
}
/* IE ne reconnaissant pas le sélecteur ">" */
html>body #menu li
{
border-right: 1px solid transparent ; /* on met une bordure transparente à droite de chaque élément */
}
#menu li ul /* Sous-listes */
{
position: absolute; /* Position absolue */
width: 144px; /* Largeur des sous-listes 144*/
left: -999em; /* Hop, on envoie loin du champ de vision */
}
#menu li ul a { /*surcharge de l attribut en auto*/
height: auto;
}
#menu li ul li /* Éléments de sous-listes */
{
/* pour IE qui ne reconnaît pas "transparent" (comme précédemment) */
border-top : 1px solid #fff; /* on met une bordure blanche en haut de chaque élément d'une sous liste */
}
/* IE ne reconnaissant pas le sélecteur ">" */
html>body #menu li ul li
{
border-top : 1px solid transparent; /* on met une bordure transparente en haut de chaque élément */
}
#menu li ul ul
{
margin : -42px 0 0 100px ;
/* pour IE qui ne reconnaît pas "transparent" (comme précédemment) */
border-left : 1px solid #fff ; /* Petite bordure à gauche pour ne pas coller ... */
}
/* IE ne reconnaissant pas le sélecteur ">" ... je me répète ;-) */
html>body #menu li ul ul
{
border-left : 1px solid transparent ; /* on met une bordure transparente sur la gauche de chaque élément */
}
#menu a:hover /* Lorsque la souris passe sur un des liens */
{
color: #000; /* On passe le texte en noir... */
background: #fff; /* ... et au contraire, le fond en blanc */
}
#menu li:hover ul ul, #menu li.sfhover ul ul /* Sous-sous-listes lorsque la souris passe sur un élément de liste */
{
left: -999em; /* On expédie les sous-sous-listes hors du champ de vision */
}
#menu li:hover ul, #menu li li:hover ul, #menu li.sfhover ul, #menu li li.sfhover ul /* Sous-listes lorsque la souris passe sur un élément de liste ET sous-sous-lites lorsque la souris passe sur un élément de sous-liste */
{
left: auto; /* Repositionnement normal */
min-height: 0; /* Corrige un bug sous IE */
} |
et voici un exemple de code html utilisé avec ce menu :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| <html>
<ul id="menu">
<li>
<a href="#">accueil</a>
</li>
<li>
<a href="#">membres</a>
<ul>
<li><a href="#">connexion</a></li>
<li><a href="#">inscription</a></li>
</ul>
</li>
<li>
<a href="#">images</a>
<ul>
<li>
<a href="#">photos</a>
<ul>
<li><a href="#">catégorie 1</a></li>
<li><a href="#">catégorie 2</a></li>
</ul>
</li>
<li>
<a href="#">vidéos</a>
</li>
</ul>
</li>
<li>
<a href="#">téléchargements</a>
<ul>
<li><a href="#">vidéos</a></li>
<li><a href="#">musiques</a></li>
</ul>
</li>
<li>
<a href="#">plus</a>
<ul>
<li><a href="#">forum</a></li>
<li><a href="#">liens</a></li>
<li><a href="#">nous contacter</a></li>
<li><a href="#">team</a></li>
<li><a href="#">recherche</a></li>
</ul>
</li>
</ul>
</html> |
Si quelqu'un a une idée, je suis preneur, surtout pour internet explorer 7 !
merci d'avance
cordialement
benilto