Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
967 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Menu déroulant à trois niveaux !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Menu déroulant à trois niveaux !

n°2143222
martiidu87
Posté le 21-05-2012 à 16:04:14  profilanswer
 

Bonjour,
 
J'aimerais avoir un peu d'aide SVP car j'ai très bien réussi mon menu déroulant mais il faut que je rajoute un troisième niveau et je bloque un peu :/  
Que faut-il que je rajoute dans le css pour afficher un 3eme niveau SVP ?
Voici mon code html et css :
 

Code :
  1. <div id="main_menu">
  2.     <ul class="navfxenabled">
  3.       <li>
  4.         <a href="*******" class="cat1">*******</a>
  5.       </li>
  6.       <li>
  7.         <a href="#" class="cat2">*******</a>
  8.         <ul>
  9.   <li>
  10.             <a href="" class="cat22">*******</a>
  11.           </li>
  12.           <li>
  13.             <a href="" class="cat22">*******</a>
  14.                                         <ul id="niveau3">
  15.      <li><a href="#">*******</a></li>
  16.      <li><a href="#">*******</a></li>
  17.      <li><a href="#">*******</a></li>
  18.     </ul>
  19.           </li>
  20.           <li>
  21.             <a href="#" class="cat22">*******</a>
  22.           </li>
  23.           <li>
  24.             <a href="#" class="cat22">*******</a>
  25.           </li>
  26.           <li>
  27.             <a href="#" class="cat22">*******</a>
  28.           </li>
  29.    <li>
  30.             <a href="#" class="cat22">*******</a>
  31.           </li>
  32.         </ul>
  33.       </li>
  34.       <li>
  35.         <a href="#" class="cat3">*******</a>
  36.         <ul>
  37.           <li>
  38.             <a href="#" class="cat33">*******</a>
  39.           </li>
  40.           <li>
  41.             <a href="#" class="cat33">*******</a>
  42.           </li>
  43.    <li>
  44.             <a href="#" class="cat33">*******</a>
  45.           </li>
  46.    <li>
  47.             <a href="#" class="cat33">*******</a>
  48.           </li>
  49.         </ul>
  50.       </li>
  51.       <li>
  52.         <a href="#" class="cat4">*******</a>
  53.         <ul>
  54.           <li>
  55.             <a href="#" class="cat44">*******</a>
  56.           </li>
  57.           <li>
  58.             <a href="#" class="cat44">*******</a>
  59.           </li>
  60.    <li>
  61.             <a href="#" class="cat44">*******</a>
  62.           </li>
  63.    <li>
  64.             <a href="#" class="cat44">*******</a>
  65.           </li>
  66.         </ul>
  67.       </li>
  68.       <li>
  69.         <a href="" class="cat5">*******</a>
  70.       </li>
  71.       <li>
  72.         <a href="" class="cat6">*******</a>
  73.       </li>
  74.     </ul>
  75.   </div>


 
et mon css :  
 

Code :
  1. #main_menu {/* réglage général du menu */
  2. background: transparent;/* couleur fond général */
  3. display: table;/* si on enlève cette partie plus de fond général */
  4. width: auto;/* largeur à adapter */
  5. margin: 0 0 0px 0;/* marge inférieure après le menu, et centrage de l'ensemble dans le bloc */
  6. font-size:18px;/* taille caractères */
  7. line-height:9px;/*pour des éléments centrés verticalement, mettre la même valeur que la hauteur de caractères*/
  8. font-family: "Times New Roman", Arial, Helvetica, Georgia, Sans-serif;
  9. text-align:left;/*aligne à gauche les liens*/
  10. font-style: italic ;
  11. }
  12. #main_menu ul {/* ouverture de liste */
  13. position: relative;
  14. z-index:3;
  15. padding: 0px 0px;/* retrait par rapport au fond général */
  16. display:block;
  17. }
  18. #main_menu li {/* élément de liste, les catégories */
  19. float: left;/* se positionne sur la gauche et se suivent si plusieurs */
  20. padding: 0px;/* pas de retrait */
  21. position: relative;
  22. color: #fff;/* couleur caractère des listes qui ne sont pas des liens (le slash entre les cat seules) */
  23. list-style-type: none;/* pas de puces */
  24. display:block;
  25. }
  26. #main_menu a {/* liens du menu */
  27. display: block;
  28. color: #f4f5e9;/* couleur lien */
  29. text-decoration: none;/* pas de surlignage naturel */
  30. font-family: "Times New Roman", Arial, Helvetica, Georgia, Sans-serif;
  31. padding: 0px 0px;/* retrait */
  32. }
  33. #main_menu a:hover, #main_menu a:focus {/* survol des liens */
  34. display: block;
  35. font-family: "Times New Roman", Arial, Helvetica, Georgia, Sans-serif;
  36. color: white;/* couleur lien */
  37. }
  38. #main_menu li li {/* sous-menu */
  39. display: block;/* fait que les sous-menus soient les uns sous les autres */
  40. float: none;
  41. }
  42. #main_menu li ul {/* fait que les sous-menus ne soient pas visibles hors survol */
  43. display: none;
  44. position: absolute;
  45. width: 193px;/* largeur des sous-menus  */
  46. }
  47. #main_menu li:hover ul,
  48. #main_menu .navfxenabled li.hover ul {/* fait que les sous-menus soient visibles au survol */
  49. display: block;
  50. }
  51. #main_menu ul li ul {/* pas de retrait pour les sous-menus */
  52. margin-left:0px;
  53. margin-top: -1px;
  54. }


 
Merci d'avance


Message édité par martiidu87 le 21-05-2012 à 16:04:48

---------------
JE VENDS ---> http://forum.hardware.fr/hfr/Achat [...] 7799_1.htm
mood
Publicité
Posté le 21-05-2012 à 16:04:14  profilanswer
 

n°2143273
martiidu87
Posté le 22-05-2012 à 10:29:02  profilanswer
 

personne :/ ?


---------------
JE VENDS ---> http://forum.hardware.fr/hfr/Achat [...] 7799_1.htm
n°2143300
rufo
Pas me confondre avec Lycos!
Posté le 22-05-2012 à 13:01:41  profilanswer
 

Tu veux dire avec des <a> ayant pour class="cat222", ça c'est ça?
 
parce que j'ai bien vu ton <ul id="niveau3"> mais j'imagine que tu dois pouvoir avoir à différent endroits dans ton menu des items de niveau 3 dans le menu? Si oui, alors faut pas utiliser l'attribut id mais class puisque chaque id doit être unique...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2143303
martiidu87
Posté le 22-05-2012 à 13:34:24  profilanswer
 

D'abord merci pour ta réponse !
Oui le niveau trois va se répéter dans deux autres rubriques.
Et oui, pour la class="222".
 
J'ai du mal à comprendre comment je dois m'y prendre pour faire disparaitre le "niveau3" et le faire réapparaitre au survol de mon bouton.
Comment je l’intègre au CSS... ?


---------------
JE VENDS ---> http://forum.hardware.fr/hfr/Achat [...] 7799_1.htm
n°2143304
rufo
Pas me confondre avec Lycos!
Posté le 22-05-2012 à 13:46:33  profilanswer
 

ben comme je te le disais, utilise l'attribut class plutôt qu'id. Et ensuite, disposes là où ça va bien (= là où t'as besoin de niveaux 3) les <ul class="Niveau3">...</ul>.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2143307
martiidu87
Posté le 22-05-2012 à 14:17:28  profilanswer
 

et pour le css ça donne quoi ? je dois appliquer la même chose que pour cat22 c'est à dire display : none; et display: block ?
 
au faite extrait du cat2
 

Code :
  1. #main_menu .cat2, #main_menu .cat2 ul {
  2. background-image:url(/images/bleuclaire.jpg);
  3. background-repeat:repeat x;
  4. padding-left: 20px;/* pas de retrait */
  5. padding-top: 24px;
  6. margin-right: -28px;
  7. padding-bottom: 24px;
  8. width: 143px;
  9. }
  10. #main_menu .cat2:hover, #main_menu .cat2 ul:hover{
  11. background: #0188cf;
  12. padding-left: 20px;/* pas de retrait */
  13. padding-top: 24px;
  14. margin-right: -28px;
  15. padding-bottom: 24px;
  16. display: block;
  17. }
  18. #main_menu .cat22, #main_menu .cat22 ul {
  19. line-height: 40px;
  20. background: #0188cf;
  21. padding-left: 10px;
  22. border-bottom: 1px dotted #006fac;
  23. }
  24. #main_menu .cat22:hover, #main_menu .cat22 ul:hover {
  25. background: #0173af;
  26. }


Message édité par martiidu87 le 22-05-2012 à 14:22:29

---------------
JE VENDS ---> http://forum.hardware.fr/hfr/Achat [...] 7799_1.htm
n°2143309
rufo
Pas me confondre avec Lycos!
Posté le 22-05-2012 à 14:28:33  profilanswer
 

Oui, avec probablement plus de décalage à gauche...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2143323
martiidu87
Posté le 22-05-2012 à 16:39:31  profilanswer
 

désolé mais perso je bug  :??: lol je viens de rajouter ça :
 

Code :
  1. #main_menu li li:hover ul {
  2.     left: 150px;
  3.     top: 0;
  4. display: block;
  5. }


 
et ça :
 

Code :
  1. #main_menu li ul li {
  2. display: none;
  3. position: absolute;
  4. width: 193px;
  5. }


 
Au survol c'est ok le texte apparait correctement comme demandé sur la droite, mais avant le survol il apparait sous la rubrique parente...


Message édité par martiidu87 le 22-05-2012 à 16:41:12

---------------
JE VENDS ---> http://forum.hardware.fr/hfr/Achat [...] 7799_1.htm
n°2143326
rufo
Pas me confondre avec Lycos!
Posté le 22-05-2012 à 16:51:05  profilanswer
 

plutôt que de mettre des règles sur #main_menu li ul li, tu ferais mieux de mettre une class à ton ul qui correspond à ton Niveau 3 et écrire des règles css en fonction de cette class.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2143330
martiidu87
Posté le 22-05-2012 à 17:04:44  profilanswer
 

oui donc ça va donner ça :
 

Code :
  1. <ul class="niveau3">
  2. <li><a class="cat222" href="#">*******</a></li>
  3. <li><a class="cat222" href="#">*******</a></li>
  4. <li><a class="cat222" href="#">*******</a></li>
  5. </ul>


 

Code :
  1. #main_menu li li:hover > ul,
  2. #main_menu .navfxenabled li li.hover > ul {/* fait que les sous-menus soient visibles au survol */
  3. display: block;
  4. left: 193px;
  5. margin-top: 0px;
  6. top: 0;
  7. }
  8. .niveau3
  9. {
  10. display: none;
  11. position: absolute;
  12. width: 193px;/* largeur des sous-menus  */
  13. }


 
J'ai simplement rajouté le .niveau3 pour faire disparaitre le texte sauf que ça ne fonctionne toujours pas... :(


---------------
JE VENDS ---> http://forum.hardware.fr/hfr/Achat [...] 7799_1.htm
mood
Publicité
Posté le 22-05-2012 à 17:04:44  profilanswer
 

n°2143345
pop-pan
yay!
Posté le 22-05-2012 à 19:30:30  profilanswer
 

t'as pas besoin de rajouter des tonnes de classes normalement.
 
http://jsfiddle.net/A7bRY/3/


Message édité par pop-pan le 22-05-2012 à 19:30:57

---------------
[VDS] rail vesa, bras ecran, support TV / [ACH] des machins
n°2143348
rufo
Pas me confondre avec Lycos!
Posté le 22-05-2012 à 20:31:59  profilanswer
 

sauf si le menu est généré par un outil de type CMS et qu'il est possible d'affecter un style différent à chaque item de menu (par ex, une boutique en ligne)...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2143355
martiidu87
Posté le 22-05-2012 à 22:37:39  profilanswer
 

Bon je vous ai envoyé le lien en mp (c'est le site d'une commune et il est en construction)
Pour voir le résultat regardez dans la rubrique commune, conseil municipal...
J'ai essayé avec une classe pour le niveau 3 mais c'est toujours pareil.
Je commence à en avoir marre :/ il y a un truc qui fait déconner le reste de mon code css...


Message édité par martiidu87 le 22-05-2012 à 22:38:23

---------------
JE VENDS ---> http://forum.hardware.fr/hfr/Achat [...] 7799_1.htm
n°2143379
rufo
Pas me confondre avec Lycos!
Posté le 23-05-2012 à 09:48:51  profilanswer
 

Je ne peux pas rentrer sur le site, je suis bloqué sur la page d'accueil et y'a pas le menu déroulant :/
 
Edit : vu que ton site est sous Wordpress, tu devrais peut-être regarder si y'aurait pas un plugin qui ferait le menu comme tu veux...


Message édité par rufo le 23-05-2012 à 09:49:39

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
n°2143382
martiidu87
Posté le 23-05-2012 à 09:57:17  profilanswer
 

non mais c'est résolu enfin :D et les plugins sont vraiment "bidons" en plus la plus part sont en anglais :)  
 
voici la solution à mon problème :
 

Code :
  1. <li class="soussousmenugauche">
  2.             <a href="" class="cat22">Conseil municipal</a>
  3.       <ul>
  4.        <li class="cat222"><a href="#">*******</a></li>
  5.        <li class="cat222"><a href="#">*******</a></li>
  6.        <li class="cat222"><a href="#">*******</a></li>
  7.       </ul>
  8.           </li>


 

Code :
  1. #main_menu li ul .soussousmenugauche ul {/* fait que les sous-menus ne soient pas visibles hors survol */
  2. display: none;
  3. position: absolute; }
  4. #main_menu li ul .soussousmenugauche:hover ul {/* fait que les sous-menus soient visibles au survol */
  5. display: block;
  6. left: 193px;
  7. top: 1px;  }
  8. #main_menu .cat222, #main_menu .cat222 ul {
  9. line-height: 40px;
  10. background: #0188cf;
  11. padding-left: 10px;
  12. border-bottom: 1px dotted #006fac;
  13. border-left: 1px solid #0b92d9;
  14. }
  15. #main_menu .cat222:hover, #main_menu .cat222 ul:hover {
  16. background: #0173af;
  17. }


 
Donc merci pour votre aide les gars !


Message édité par martiidu87 le 23-05-2012 à 09:58:22

---------------
JE VENDS ---> http://forum.hardware.fr/hfr/Achat [...] 7799_1.htm

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Menu déroulant à trois niveaux !

 

Sujets relatifs
Winpe Menu.vbs de microsoft (ajout fonction en local disque usb)Wordpress exclure une page du menu
Menu déroulant multicolorerajouter une commande au menu clic droit
réaliser un programme permettant de faire le PGCD de trois nombresMenu horizontal full CSS
créer un video/chat pour trois personnes sur mon sitecréer un video/chat pour trois personnes !!
[CSS3] Pb de remonté menu animé 
Plus de sujets relatifs à : Menu déroulant à trois niveaux !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR