Bonjour à tous,
Suite au tutoriel sur les menus déroulant en css, que j'ai trouvé très pratique :
http://css.alsacreations.com/Construction-de-menus-en-CSS/Un-menu-deroulant-en-CSS-et-XHTML-vertical-et-horizontal
J'ai essayé de le compléter en mettant des images de fond sur les liens dans les "dt" et sur les "dd" afin d'habiller tout ca, mais qui aurait cru que tout ce serait passé comme prévu ? Je m'explique..
Voici le lien vers le rendu : http://apanhaleux.free.fr/cameleo/menuderoulantcss/menu.html
Au niveau du code html, j'ai simplement ajouté un lien auquel j'attribue une classe dans les éléments dt, afin d'éviter les conflits avec les liens situés dans les li, voici un exemple de code :
Pour ce qui est du css, j'ai attribué un arrière plans aux liens dans les dt, qui ont donc une classe précise, et un arrière plan à l'élément dd qui se répete verticalement. Il se trouve que le fond des premiers lien se répète bizarrement sous Firefox lorsque je clique sur un bouton, alors que l'image de fond des "dd" ne s'affiche pas sous IE7...
Voici le code css :
Seriez vous en mesure de m'aider ?
Merci d'avance
Modifié par aphax (03 Sep 2007 - 10:00)
Suite au tutoriel sur les menus déroulant en css, que j'ai trouvé très pratique :
http://css.alsacreations.com/Construction-de-menus-en-CSS/Un-menu-deroulant-en-CSS-et-XHTML-vertical-et-horizontal
J'ai essayé de le compléter en mettant des images de fond sur les liens dans les "dt" et sur les "dd" afin d'habiller tout ca, mais qui aurait cru que tout ce serait passé comme prévu ? Je m'explique..
Voici le lien vers le rendu : http://apanhaleux.free.fr/cameleo/menuderoulantcss/menu.html
Au niveau du code html, j'ai simplement ajouté un lien auquel j'attribue une classe dans les éléments dt, afin d'éviter les conflits avec les liens situés dans les li, voici un exemple de code :
<dl>
<dt onclick="javascript:montre('smenu1');"><a class="aProd1" href="#">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>
etc...
</ul>
</dd>
</dl>
Pour ce qui est du css, j'ai attribué un arrière plans aux liens dans les dt, qui ont donc une classe précise, et un arrière plan à l'élément dd qui se répete verticalement. Il se trouve que le fond des premiers lien se répète bizarrement sous Firefox lorsque je clique sur un bouton, alors que l'image de fond des "dd" ne s'affiche pas sous IE7...
Voici le code css :
@charset "utf-8";
/* CSS Document */
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; /* placement du menu, à modifier selon vos besoins */
top: 0;
left: 0;
z-index:100;
width: 100%; /* correction pour Opera */
}
#menu dl {
width: 168px;
}
#menu dt {
margin-top : 1px;
}
a.aProd1 {
width: 128px;
height:21px;
display : block;
background: #ddd url(../img/site/nav-prod-bg.jpg) left top no-repeat;
font: bold 0.9em Tahoma,Verdana,sans-serif;
padding: 4px 0 0 40px;
text-transform:uppercase;
text-decoration:none;
color : #fff;
/* Box model hack IE5.x */
width: 168px;
height: 25px;
voice-family:"\"}\"";
voice-family:inherit;
width: 128px;
height: 21px;
}
/* Opera 5 */
html>body a.aProd1 { width:128px; height:21px;}
a.aProd1:hover, a.aProd1:focus {
background-position: 0 -25px;
}
#menu dd {
display: none;
background: #c90 url(../img/site/nav-prod-ul2-bg.gif) left top repeat-y;
}
#menu ul {
}
#menu li {
}
#menu li a {
width: 128px;
padding-left: 40px;
font: bold 0.6em Tahoma, Verdana, Sans-serif;
color: #333;
}
#menu li a:hover, #menu li a:focus {
color : #c90;
}
Seriez vous en mesure de m'aider ?
Merci d'avance
Modifié par aphax (03 Sep 2007 - 10:00)