par
zeus » 03 févr. 2006, 11:26
Bonjour tout le monde
J'ai un petit problème pour la création d'un menu déroulant en CSS
Mon menu est en réalité une imbrication de liste ordonnée dans lesquels les sousMenu ne sont pas affichés
Code : Tout sélectionner
<ul id="menuDeroulant">
<li>
<a href="#">Factures</a>
<ul class="sousMenu">
<li><a href="#">Factures reçues</a></li>
<li><a href="#">Factures soumises</a></li>
</ul>
</li>
<li>
<a href="#">Commandes</a>
<ul class="sousMenu">
<li><a href="#">Gestion commandes</a></li>
<li><a href="#">Gestion paiements</a></li>
<li><a href="#">TVA</a></li>
</ul>
</li>
</ul>
L'idée générale est que au survol d'une case du menu principal, le sous-menu associé apparaisse. Pour cela, j'ai utilisé l'opérateur > qui me permet de modifier une juste l'enfant de la case survolée
Pour cela, il faut que j'utilise l'enfant du li survolé :
Ce code fonctionne parfaitement sous FF, mais mon problème intervient (encore) lors de la vérification avec IE
En effet, IE n'attribue la pseudo classe :hover qu'aux liens donc mon style CSS n'est jamais appelé
Pour résoudre ce problème, il faudrait que le survol du lien affiche le sous menu concerné mais je ne sais pas comment récupérer l'enfant du li si le lien contenu dans le li est sélectionné
ce style ne fonctionne pas parce que le sous menu n'est pas dans le lien
Est-ce que quelqu'un voit comment résoudre mon problème ou comment contourner mon problème ?
Lien vers menu li:hover > .sousMenu
Lien vers menu li a:hover > .sousMenu