18073 sujets
Merci ca fonctionne trés bien.
J'ai encore une question:
Je voudrais espacer les boutons du menu vertical,j'utilise margin: 12px 0;
ce qui fonctione mais ca espace aussi les sous menus ,j'ai pas le temps de cliquer sur un lien des sous menus il a le temps de serefermer ,je voudrais espacer les boutons du menu sans espacer les sous menu aux boutons.
Comment dois je m'y prendre?
Merci pour vos réponses.
J'ai encore une question:
Je voudrais espacer les boutons du menu vertical,j'utilise margin: 12px 0;
ce qui fonctione mais ca espace aussi les sous menus ,j'ai pas le temps de cliquer sur un lien des sous menus il a le temps de serefermer ,je voudrais espacer les boutons du menu sans espacer les sous menu aux boutons.
Comment dois je m'y prendre?
Merci pour vos réponses.
cedric1112 a écrit :
Merci ca fonctionne trés bien.
J'ai encore une question:
Je voudrais espacer les boutons du menu vertical,j'utilise margin: 12px 0;
ce qui fonctione mais ca espace aussi les sous menus ,j'ai pas le temps de cliquer sur un lien des sous menus il a le temps de serefermer ,je voudrais espacer les boutons du menu sans espacer les sous menu aux boutons.
Comment dois je m'y prendre?
Merci pour vos réponses.
Je ne sais pas quel menu tu utilises (donne moi le lien si ma solution ne fonctionne pas)
Je pense que tu as mis :
margin: 12px 0;
sur :
dl#menu dt {
et puisque ça agit aussi sur tes sous-menus, ajoute :
margin: -12px 0;
à :
dl#menu dd {
Normalement ça fonctionne

Merci ca fonctionne mais un nouveau probleme est aparus,le dernier sous menu est tronqué,j'ai éssayé d'ajouter "height:50px;" pour régler la hauteur des sous menus mais cela fait pas propre ca à une conséquence sur les autres sous menus.
J'ai voulu éssayer de changer la hauteur du menu comme ceci mais ca n'a eu aucun effet:
Modifié par cedric1112 (22 Mar 2006 - 19:42)
#menu dd {
border: 1px solid black;
margin: -12px 0;
height:50px;
}
J'ai voulu éssayer de changer la hauteur du menu comme ceci mais ca n'a eu aucun effet:
#menu {
height:50px;
}
Modifié par cedric1112 (22 Mar 2006 - 19:42)
je crois avoir la solution
J'ai tout d'abord tenté de donner une hauteur au dernier sous-menu comme ça :
css
html
mais la bordure du bas n'apparaîssait plus du fait de la marge "bottom" de -12px qu'on a mis là :
Je me suis donc dit qu'il fallait essayer de donner une bordure "bottom" au dernier "li"
Ma solution est donc la suivante :
tu gardes
et
seulement
et tu ajoutes :
css
html (juste après le dernier "li")
Ca devrait marcher
tiens nous au courant stp
ps: si tu veux donner un tout petit espace entre les menus et sous-menus, comme sur le tuto original, mets seulement :
et
en laissant

J'ai tout d'abord tenté de donner une hauteur au dernier sous-menu comme ça :
css
dl#menu li.dernier {
height: 27px;
}
</div>
html
<li class="dernier"><a href="#">Sous-Menu 4.1</a></li>
mais la bordure du bas n'apparaîssait plus du fait de la marge "bottom" de -12px qu'on a mis là :
dl#menu dd {
border: 1px solid gray;
margin: -12px 0;
}
Je me suis donc dit qu'il fallait essayer de donner une bordure "bottom" au dernier "li"
Ma solution est donc la suivante :
tu gardes
dl#menu dt {
margin: 12px 0;
}
et
dl#menu dd {
margin: -12px 0;
}
seulement
et tu ajoutes :
css
#borderBottomDernier {
border-bottom: 12px solid gray;
}
html (juste après le dernier "li")
<div id="borderBottomDernier"></div>
Ca devrait marcher

tiens nous au courant stp
ps: si tu veux donner un tout petit espace entre les menus et sous-menus, comme sur le tuto original, mets seulement :
dl#menu dd {
margin: -10px 0;
}
et
#borderBottomDernier {
border-bottom: 10px solid gray;
}
en laissant
dl#menu dt {
margin: 12px 0;
}
Bonjour,
Merci pour ta solution mais je n'ai pas reussi à la mettre en place,voici mon code:
j'ai toujours le dernier sous menu qui ne saffiche pas entierement.
Merci pour ta solution mais je n'ai pas reussi à la mettre en place,voici mon code:
[code]<!--
body {
margin: 0;
padding: 0;
background: #0AC0F5;
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: 230;
left: 3;
}
#menu {
width: 12em;
}
#menu dt {
cursor: pointer;
margin: 12px 0;
height: 20px;
line-height: 20px;
text-align: center;
font-weight: bold;
border: 1px solid black;
background: #3399CC;
}
#menu dd {
border: 1px solid black;
margin: -12px 0;
}
#menu li {
text-align: center;
background: #fff;
}
#menu li a, #menu dt a {
color: #000;
text-decoration: none;
display: block;
border: 0 none;
height: 100%;
}
#menu li a:hover{
background: #0AC0F5;
}
#borderBottomDernier {
border-bottom: 12px solid gray;
}
#menu dt a:hover {
background: #ffffff;
}
j'ai toujours le dernier sous menu qui ne saffiche pas entierement.
mmmh, normalement ça devrait marcher avec ton css
as-tu bien ajouté ? :
dans ton code html, après le dernier "li"
soit :
as-tu bien ajouté ? :
<div id="borderBottomDernier"></div>
dans ton code html, après le dernier "li"
soit :
<dl id="menu">
<dt onclick="javascript:montre();"><a href="#">Menu 1</a></dt>
<dt onclick="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>
</ul>
</dd>
<dt onclick="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.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
<li><a href="#">Sous-Menu 3.1</a></li>
</ul>
</dd>
<dt onclick="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.1</a></li>
<div id="borderBottomDernier"></div>
</ul>
</dd>
</dl>
Je ne sais pas si j'ai bien tout compris moi-même
mais je vais essayer
Quand tu as mis :
à tes <dt> (menus)
tu as ensuite du rétablir le margin des <dd> (sous-menus) en mettant :
mais ton dernier sous-menu n'avait pas d'autre sous-menu dessous pour le "pousser" vers le haut, il disparaissait donc pratiquement
donc on a mis une div sous le dernier sous-menu avec les attributs :
pour le pousser vers le haut de 12px et lui mettre une bordure grise en bas
d'ailleurs on aurait pu aussi faire ça
voilà, j'espère ne pas avoir dit de bêtises

Quand tu as mis :
margin: 12px 0;
à tes <dt> (menus)
tu as ensuite du rétablir le margin des <dd> (sous-menus) en mettant :
margin: -12px 0;
mais ton dernier sous-menu n'avait pas d'autre sous-menu dessous pour le "pousser" vers le haut, il disparaissait donc pratiquement
donc on a mis une div sous le dernier sous-menu avec les attributs :
border-bottom: 12px solid gray;
pour le pousser vers le haut de 12px et lui mettre une bordure grise en bas
d'ailleurs on aurait pu aussi faire ça
margin-bottom: 11px;
border-bottom: 1px solid gray;
voilà, j'espère ne pas avoir dit de bêtises
