Bonjour,
J'ai utilisé l'exemple de menu horizontal d'Alsacréations. J'ai fait la page avec un DOCTYPE "XHTML 1.0 Transitional" et j'ai donc utilisé un mise en page en tableaux mais alégé un peu quand même.
Le soucis c'est que le menu déroulant doit être plus grand que le bouton car le texte y est plus long. Sur FF pas de problème, sur IE il y a un décalage entre les boutons.
Autre soucis, que je mette le menu sous un "div" ou que je mette le menu directement dans la cellule du tableau, le menu déroulant repousse tout le reste du site vers le bas. Ce soucis là je l'ai autant sur FF que sur IE.
Illustration des deux problèmes :
Code CSS :
Code de la cellule où se situe le menu :
Il faut impérativement que le menu s'affiche correctement sur IE car c'est le futur site d'une entreprise et que malheureusement la majorité des gens sont encore sur IE et c'est un point à ne pas négliger pour une entreprise.
La question est : existe-t-il une solution à ce problème ?
Merci d'avance pour votre aide précieuse
Modifié par Singer in Blue (27 Aug 2005 - 15:55)
J'ai utilisé l'exemple de menu horizontal d'Alsacréations. J'ai fait la page avec un DOCTYPE "XHTML 1.0 Transitional" et j'ai donc utilisé un mise en page en tableaux mais alégé un peu quand même.
Le soucis c'est que le menu déroulant doit être plus grand que le bouton car le texte y est plus long. Sur FF pas de problème, sur IE il y a un décalage entre les boutons.
Autre soucis, que je mette le menu sous un "div" ou que je mette le menu directement dans la cellule du tableau, le menu déroulant repousse tout le reste du site vers le bas. Ce soucis là je l'ai autant sur FF que sur IE.
Illustration des deux problèmes :

Code CSS :
td#menu {
position: relative ;
height: 46px ;
margin-left: 9px ;
z-index: 100 ;
}
dl, dt, dd, ul, li {
margin: 0 ;
padding: 0 ;
list-style-type: none ;
}
td#menu dl {
float: left ;
width: 100px ;
}
td#menu dt {
cursor: pointer ;
text-align: center ;
font-weight: bold ;
font-size: 0.9em ;
color: #000130 ;
background: #fff ;
}
td#menu dt a {
color: #000130 ;
text-decoration: none ;
display: block ;
height: 46px ;
border: 0 none ;
line-height: 46px ;
background: url(img/menu_block.jpg) no-repeat 0 -46px ;
}
td#menu dt a:hover {
color: #f0f0f0 ;
background: #316899 url(img/menu_block.jpg) no-repeat 0 0 ;
}
td#menu dd {
display: none ;
border: 1px solid gray ;
width: 130px;
}
td#menu li {
font-size: 0.9em ;
text-align: left ;
background: #f6f6f6 ;
}
td#menu li a {
text-indent: 5px ;
color: #000130 ;
text-decoration: none ;
display: block ;
height: 1.7em ;
border: 0 none ;
line-height: 1.7em ;
}
td#menu li a:hover {
background: #316899 ;
color: #f0f0f0 ;
}
Code de la cellule où se situe le menu :
<td width="655" id="menu">
<dl>
<dt onmouseover="javascript:montre('smenu1');" onmouseout="javascript:montre('smenu1');"><a href="#">About us</a></dt>
<dd id="smenu1">
<ul>
<li><a href="#">History</a></li>
<li><a href="#">Management team</a></li>
<li><a href="#">Partner</a></li>
<li><a href="#">Our Network</a></li>
<li><a href="#">Contact</a></li>
<li><a href="#">Jobs @ Tech-IP</a></li>
</ul>
</dd>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('smenu2');"><a href="#">Products</a></dt>
<dd id="smenu2">
<ul>
<li><a href="#">Classical</a></li>
<li><a href="#">Over IP</a></li>
<li><a href="#">Prepaid Cards</a></li>
<li><a href="#">Wholesale Price list</a></li>
</ul>
</dd>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu3');" onmouseout="javascript:montre('smenu3');"><a href="#">Services</a></dt>
<dd id="smenu3">
<ul>
<li><a href="#">IT</a></li>
<li><a href="#">Voice</a></li>
<li><a href="#">Post-sales support</a></li>
</ul>
</dd>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu4');" onmouseout="javascript:montre('smenu4');"><a href="#">Residential</a></dt>
<dd id="smenu4">
<ul>
<li><a href="#">Tech-IP Phone</a></li>
<li><a href="#">CPS</a></li>
<li><a href="#">Prepaid / Postpaid</a></li>
<li><a href="#">Cards</a></li>
<li><a href="#">Price List</a></li>
<li><a href="#">Helpdesk</a></li>
</ul>
</dd>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu5');" onmouseout="javascript:montre('smenu5');"><a href="#">Enterprise/SMB</a></dt>
<dd id="smenu5">
<ul>
<li><a href="#">IP Telephony</a></li>
<li><a href="#">CPS</a></li>
<li><a href="#">Postpaid</a></li>
<li><a href="#">Tailored Project</a></li>
<li><a href="#">Price List</a></li>
<li><a href="#">Helpdesk</a></li>
</ul>
</dd>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu6');" onmouseout="javascript:montre('smenu6');"><a href="#">CallShop</a></dt>
<dd id="smenu6">
<ul>
<li><a href="#">Classical</a></li>
<li><a href="#">CallShop over IP</a></li>
<li><a href="#">Billing System</a></li>
<li><a href="#">LCR</a></li>
<li><a href="#">Price List</a></li>
<li><a href="#">Helpdesk</a></li>
</ul>
</dd>
</dl></td>
Il faut impérativement que le menu s'affiche correctement sur IE car c'est le futur site d'une entreprise et que malheureusement la majorité des gens sont encore sur IE et c'est un point à ne pas négliger pour une entreprise.
La question est : existe-t-il une solution à ce problème ?
Merci d'avance pour votre aide précieuse

Modifié par Singer in Blue (27 Aug 2005 - 15:55)