5568 sujets

Sémantique web et HTML

Bonjour,

Je desire faire un menu horizontal, mais je voudrai que la barre des sous menu disparaisse avec un onmouseout.

Plus precisement , voila à quoi il ressemble :
Menu1 Menu2 Menu3
smenu1 smenu2 smenu3

Et voici le code html pour ces sous menus:

<dl>
  <dt onmouseover="montre('smenu1');"><a href="#">Menu 1</a>
 </dt>
  <dd id=smenu1>
  <ul onmouseout="getElt('smenu1').style.display='none';">
    <li><a href="#">Sous-menu 1.1</a> 
    <li><a href="#">Sous-menu 1.2</a> 
    <li><a href="#">Sous-menu 1.3</a>
 </li></ul></dd></dl>


<dl>
  <dt onmouseover="montre('smenu2');"><a href="#">Menu 2</a>
 </dt>
  <dd id=smenu2>
  <ul onmouseout="getElt('smenu2').style.display='none';">
    <li><A href="#">Sous-menu 2.1</a> 
    <li><A href="#">Sous-menu 2.2</a>
 </li></ul></dd></dl>


<dl>
  <dt onmouseover="montre('smenu3');"><A href="#">Menu 3</A>
 </dt>
  <dd id=smenu3>
  <ul onmouseout="getElt('smenu3').style.display='none';">
    <li><a href="#">Sous-menu 3.1</a> 
    <li><a href="#">Sous-menu 3.2</a> 
    <li><a href="#">Sous-menu 3.3</a> 
 </li></ul></dd></dl>


L'effet est presque bon, MAIS malheureusement, lorsque l'on passe entre deux sousmenus successifs, la souris active le onMouseOut... et c'est tres genant !
Le fait de deplacer ce onMouseOut dans le <dd> ou dans les <li> fait la meme chose. Il semblerait que ces methodes activent le onMouseOut sur les boites englobantes de chaque sous menus independement, alors qu'il faudrait qu'elle se fasse sur la boite englobante de tout le sous menu...

Je ne sais pas comment faire ca proprement, en bonne semantique ! Smiley murf

Auriez vous un idée ... ou LA solution?

Merci d'avance:)
BenJ
Modifié par benji_superstar (23 Feb 2005 - 20:32)