Bonjour,
Je suis en train de mettre en application le tutoriel d'un menu déroulant horizontal en javascript trouvé sur ce site.
Tout se passe bien sauf lorsque je rajoute un formulaire juste en dessous du div du menu: sous IE le sous-menu qui se déroule passe en DESSOUS des éléments du formulaire! Mais ce problème n'apparaît pas sous Firefox.
Voici mon code:
Pouvez-vous s'il vous plaît me dire ce que j'ai mal fait?
Merci.
A+
Je suis en train de mettre en application le tutoriel d'un menu déroulant horizontal en javascript trouvé sur ce site.
Tout se passe bien sauf lorsque je rajoute un formulaire juste en dessous du div du menu: sous IE le sous-menu qui se déroule passe en DESSOUS des éléments du formulaire! Mais ce problème n'apparaît pas sous Firefox.
Voici mon code:
<html>
<head>
<title>Menu deroulant horizontal</title>
<script type="text/javascript">
window.onload=montre;
function montre(id) {
var d = document.getElementById(id);
for (var i = 1; i<=10; i++) {
if (document.getElementById('smenu'+i)) {document.getElementById('smenu'+i).style.display='none';}
}
if (d) {d.style.display='block';}
}
</script>
<style type="text/css">
body {
margin: 0;
padding: 0;
background: white;
font: 80% verdana, arial, sans-serif;
}
div#mainmenu {
position: absolute;
z-index:100;
width: 100%;
}
#mainmenu dl, dt, dd, ul, li {
margin: 0;
padding: 0;
list-style-type: none;
}
#mainmenu dl {
float: left;
width: 12em;
margin: 0 1px;
}
#mainmenu dt {
cursor: pointer;
text-align: center;
font-weight: bold;
background: #ccc;
border: 1px solid gray;
}
#mainmenu dd {
border: 1px solid gray;
}
#mainmenu li {
text-align: center;
background: #fff;
}
#mainmenu li a, #mainmenu dt a {
color: #000;
text-decoration: none;
display: block;
height: 100%;
border: 0 none;
}
#mainmenu li a:hover, #mainmenu dt a:hover {
background: #eee;
}
div#site {
position: absolute;
top : 30px;
left : 10px;
color: #000;
background-color: #ddd;
padding: 5px;
border: 1px solid gray;
}
div#userformcontainer {
width: 700px;
font-family: verdana, arial, sans-serif;
font-size: 80%;
background-color: #f7f7f7;
color: #000000;
}
#userformcontainer div {
display: inline;
vertical-align: middle;
background-color: #f7f7f7;
}
</style>
</head>
<body>
<div id="mainmenu">
<dl>
<dt onmouseover="javascript:montre();"><a href="" title="Retour à l'accueil">Accueil</a></dt>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu1');">Menu 1</dt>
<dd id="smenu1" onmouseover="javascript:montre('smenu1');" onmouseout="javascript:montre('');">
<ul>
<li><a href="#">Sous-Menu 1.1</a></li>
<li><a href="#">Sous-Menu 1.2</a></li>
<li><a href="#">Sous-Menu 1.3</a></li>
<li><a href="#">Sous-Menu 1.4</a></li>
</ul>
</dd>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu2');">Menu 2</dt>
<dd id="smenu2" onmouseover="javascript:montre('smenu2');" onmouseout="javascript:montre('');">
<ul>
<li><a href="#">Sous-Menu 2.1</a></li>
<li><a href="#">Sous-Menu 2.2</a></li>
<li><a href="#">Sous-Menu 2.3</a></li>
<li><a href="#">Sous-Menu 2.4</a></li>
</ul>
</dd>
</dl>
</div>
<div id="site">
<div id="userformcontainer">
<form method="post" action="">
<div><label>Date de validité:</label></div>
<div><select><option value="">annee</option></select></div>
<div><select><option>listmonth</option></select></div>
<div><select><option value="">date</select></div>
<div><label>Critère:</label></div>
<div><select><option value="">Quantité</option></select></div>
<div><label>Période:</label></div>
<div><select><option value="">i</option></select></div>
<div><input type="submit" value="Valider" /></div>
</form>
</div>
<h1>Test menu deroulant avec formulaire</h1>
</div>
</body>
</html>
Pouvez-vous s'il vous plaît me dire ce que j'ai mal fait?
Merci.
A+