Bonjour à tous,
Je voudrais mettre un menu deroulant horizontal sur un site. J'ai recopié celui donné sur le site alsacreations et j'aimerais le personnaliser un peu mais j'ai quelques problemes pour le faire:
comment empecher le menu d'aller à la ligne si je retrecis la fenetre en largeur ? overflow ? (si vous avez un bon tuto sur la gestion de l'overflow je suis prenneur j'ai du mal à comprendre)
la largeur des (sur)menu est bonne mais je ne sais pas comment regler celle des sous-menu qui est trop petite et qui fait donc aller mon texte à la ligne (ce que je ne veux pas).
Si je modifie la largeur dans #menu dd ou #menu li ca pousse le (sur)menu suivant.
Une idée ? (je recopie le code de l'example alsacreations pour pas vous ennuyer à chercher)
CSS:
HTML:
Merci d'avance
Modifié par Raphael (07 Jun 2006 - 19:51)
Je voudrais mettre un menu deroulant horizontal sur un site. J'ai recopié celui donné sur le site alsacreations et j'aimerais le personnaliser un peu mais j'ai quelques problemes pour le faire:
comment empecher le menu d'aller à la ligne si je retrecis la fenetre en largeur ? overflow ? (si vous avez un bon tuto sur la gestion de l'overflow je suis prenneur j'ai du mal à comprendre)
la largeur des (sur)menu est bonne mais je ne sais pas comment regler celle des sous-menu qui est trop petite et qui fait donc aller mon texte à la ligne (ce que je ne veux pas).
Si je modifie la largeur dans #menu dd ou #menu li ca pousse le (sur)menu suivant.
Une idée ? (je recopie le code de l'example alsacreations pour pas vous ennuyer à chercher)
CSS:
body {
margin: 0;
padding: 0;
background: white;
font: 80% verdana, arial, sans-serif;
}
dl, dt, dd, ul, li {
margin: 0;
padding: 0;
list-style-type: none;
}
#menu {
position: absolute;
top: 0;
left: 0;
z-index:100;
width: 100%;
}
#menu dl {
float: left;
width: 12em;
margin: 0 1px;
}
#menu dt {
cursor: pointer;
text-align: center;
font-weight: bold;
background: #ccc;
border: 1px solid gray;
}
#menu dd {
border: 1px solid gray;
}
#menu li {
text-align: center;
background: #fff;
}
#menu li a, #menu dt a {
color: #000;
text-decoration: none;
display: block;
height: 100%;
border: 0 none;
}
#menu li a:hover, #menu dt a:hover {
background: #eee;
}
#site {
position: absolute;
z-index: 1;
top : 70px;
left : 10px;
color: #000;
background-color: #ddd;
padding: 5px;
border: 1px solid gray;
}
a {text-decoration: none;
color: black;
color: #222;
}
HTML:
<body>
<div id="menu">
<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">
<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>
<li><a href="#">Sous-Menu 1.5</a></li>
<li><a href="#">Sous-Menu 1.6</a></li>
</ul>
</dd>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu2');">Menu 2</dt>
<dd id="smenu2">
<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>
<dl>
<dt onmouseover="javascript:montre('smenu3');">Menu 3</dt>
<dd id="smenu3">
<ul>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.2</a></li>
<li><a href="#">Sous-Menu 3.3</a></li>
<li><a href="#">Sous-Menu 3.4</a></li>
<li><a href="#">Sous-Menu 3.5</a></li>
</ul>
</dd>
</dl>
<dl>
<dt onmouseover="javascript:montre('smenu4');">Menu 4</dt>
<dd id="smenu4">
<ul>
<li><a href="#">Sous-Menu 4.1</a></li>
<li><a href="#">Sous-Menu 4.2</a></li>
<li><a href="#">Sous-Menu 4.3</a></li>
</ul>
</dd>
</dl>
</div>
<div id="site">
<h1>Menu horizontal déroulant en CSS</h1>
<p>Testé sous (tested under) Internet Explorer, Netscape, Mozilla, Opera et Firebird</p>
<p>Il vous suffit d'adapter le code source de cette page à vos besoins. </p>
<p>Raphaël GOETTER<br />
<a href="http://www.alsacreations.com">Alsacréations</a><br />
<a href="http://css.alsacreations.com/Construction-de-menus-en-CSS/Un-menu-deroulant-en-CSS-et-XHTML-vertical-et-horizontal">Explications / Explanations</a></p>
</div>
</body>
Merci d'avance
Modifié par Raphael (07 Jun 2006 - 19:51)