[CSS] Menu déroulant --> aide please!

Menu déroulant --> aide please! [CSS] - HTML/CSS - Programmation

Marsh Posté le 06-04-2005 à 16:07:49    

Re!
 
Bon après les conseils de FlorentG, je me suis refais un ptit menu déroulant, mais c encore pas parfait...
 
http://www.duotone.ch/~bastien/applimed/
 
Mon CSS :

Code :
  1. #menu {
  2. position: absolute;
  3. top: 155px;
  4. left: 90px;
  5. width: 640px;
  6. }
  7. html>body #menu {
  8. top: 142px;
  9. }
  10. #menu ul {
  11. width: 100%;
  12. padding: 0px;
  13. margin: 0px;
  14. border-left: 1px solid black;
  15. border-right: 1px solid black;
  16. border-bottom: 1px solid black;
  17. background-color: #E2E2E2;
  18. }
  19. #menu li {
  20. float: left;
  21. position: relative;
  22. text-align: center;
  23. list-style-type: none;
  24. }
  25. #sMenu li {
  26. text-align: left;
  27. padding-left: 5px;
  28. width: 100%;
  29. }
  30. #menu li:hover {
  31. background-color: #6699CC;
  32. }
  33. #menu li ul {
  34. display: none;
  35. position: absolute;
  36. left: 0px;
  37. }
  38. #menu li > ul {
  39. top: auto;
  40. left: auto;
  41. }
  42. #menu li:hover ul, li.over ul {
  43. display: block;
  44. }
  45. #menu a {
  46. font-family: Arial, Helvetica, sans-serif;
  47. font-size: 10pt;
  48. color: #000000;
  49. font-weight: bold;
  50. text-decoration: none;
  51. }
  52. #sMenu a {
  53. font-weight: normal;
  54. }
  55. #sMenu a:hover {
  56. color: #FFFFFF;
  57. }
  58. .menuSmall {
  59. width: 75px;
  60. }
  61. .menuMedium {
  62. width: 120px;
  63. }
  64. .menuBig {
  65. width: 160px;
  66. }
  67. .borderRW {
  68. border-right: 1px solid white;
  69. }


 
 
Mon HTML :

Code :
  1. <head>
  2. <script type="text/javascript">
  3. startList = function() {
  4. if (document.all&&document.getElementById) {
  5. navRoot = document.getElementById("menu" );
  6. for (i=0; i<navRoot.childNodes.length; i++) {
  7. node = navRoot.childNodes[i];
  8. if (node.nodeName=="LI" ) {
  9. node.onmouseover=function() {
  10. this.className+=" over";
  11.   }
  12.   node.onmouseout=function() {
  13.   this.className=this.className.replace(" over", "" );
  14.    }
  15.    }
  16.   }
  17. }
  18. }
  19. window.onload=startList;
  20. </script>
  21. </head>
  22. <body>
  23.   <ul id="menu">
  24.    <li class="menuSmall borderRW"><a href="">Accueil</a></li>
  25.    <li class="menuMedium borderRW"><a href="">Entreprise</a>
  26.     <ul id="sMenu">
  27.      <a href=""><li>Présentation</li></a><br>
  28.      <a href=""><li>Historique</li></a>
  29.     </ul>
  30.    </li>
  31.    <li class="menuBig borderRW"><a href="">Produits & Services</a>
  32.     <ul id="sMenu">
  33.      <a href=""><li>Accessoires</li></a><br>
  34.      <a href=""><li>Applicateur</li></a><br>
  35.      <a href=""><li>Boules</li></a><br>
  36.      <a href=""><li>Compresses</li></a><br>
  37.      <a href=""><li>Sets</li></a><br>
  38.      <a href=""><li>Services</li></a>
  39.     </ul>
  40.    </li>
  41.    <li class="menuMedium borderRW"><a href="">Qualité</a>
  42.     <ul id="sMenu">
  43.      <a href=""><li>Certification ISO</li></a><br>
  44.      <a href=""><li>Fabrication</li></a>
  45.     </ul>
  46.    </li>
  47.    <li class="menuSmall borderRW"><a href="">Contacts</a></li>
  48.    <li class="menuSmall"><a href="">Liens</a></li>
  49.   </ul>
  50. </body>


 
 
Plusieurs problèmes à noter :
 

  • Sous IE ca marche pas... alors que ca devrait! Bizarre.
  • Comment je fais pour enlever le débordement (5px) qui se produit qd on survole un sous-menu (tout en gardant cette marge (5px) à gauche! -> pasque le texte collé au bord, c'est pas beau!)??
  • Comment faire pour diminuer la bordure des sous-menus d'1 pixel -> pour aligner avec les petit traits blancs.
  • Tous les problèmes qui vont apparaître sous IE une fois que ca marchera :D


Merci pour votre aide!
 
PS: A lire pour ceux qui sont intéressé par un menu du genre :
http://www.alistapart.com/articles/dropdowns  
http://css.alsacreations.com/Const [...] us-en-CSS/


Message édité par le_duc le 06-04-2005 à 16:12:53
Reply

Marsh Posté le 06-04-2005 à 16:07:49   

Reply

Marsh Posté le 06-04-2005 à 16:10:45    

Ca marche sous IE à cause du script tout en haut :)


Message édité par FlorentG le 06-04-2005 à 16:10:53
Reply

Marsh Posté le 06-04-2005 à 16:13:19    

?? j'enlève le script?? (je test...)
 
-> vlà l'adresse pour voir : http://www.duotone.ch/~bastien/applimed/

Reply

Marsh Posté le 06-04-2005 à 16:16:11    

avec ou sans script, ca marche pas sous IE ...

Reply

Marsh Posté le 06-04-2005 à 16:16:15    

Haaaaa applimed le retour :D
 
Sinon sans le script ça ne fonctionnera pas sous IE [:spamafote]

Reply

Marsh Posté le 06-04-2005 à 16:20:31    

FlorentG a écrit :

Haaaaa applimed le retour :D
 
Sinon sans le script ça ne fonctionnera pas sous IE [:spamafote]


 
pkoi le retour? :D
 
bah, là le script y est et ca marche pas...

Reply

Marsh Posté le 06-04-2005 à 16:23:23    

Sûrement un problème de CSS, il trouve pas la bonne classe

Reply

Marsh Posté le 06-04-2005 à 16:27:51    

FlorentG a écrit :

Sûrement un problème de CSS, il trouve pas la bonne classe


 
comment tu fais pour savoir qu'il trouve pas la bonne classe?

Reply

Marsh Posté le 06-04-2005 à 16:30:56    

Tu lui demandes : Tu fait sous IE "Fichier\Poser une question", tu tapes : "Do you find the new class", et il te répondra :D

Reply

Marsh Posté le 06-04-2005 à 16:33:19    

FlorentG a écrit :

Tu lui demandes : Tu fait sous IE "Fichier\Poser une question", tu tapes : "Do you find the new class", et il te répondra :D


 
:D LOOL non mais sérieux? y'a moyen de savoir ca ?? genre un compilateur :D?
 
-> j'ai trouvé l'erreur... en fait il faut pas mettre les :
 
#menu blabla
 
seulement
 
blabla
 
Je vois pas ce que ca change, mais bon...
 
Pour les autres problèmes, t'as une solution?

Reply

Marsh Posté le 06-04-2005 à 16:33:19   

Reply

Marsh Posté le 06-04-2005 à 16:35:26    

Avec un débuggeur. Si t'as Visual Studio, tu as entre tes mains le meilleur débuggeur de JS :sol:

Reply

Marsh Posté le 06-04-2005 à 16:41:08    

FlorentG a écrit :

Avec un débuggeur. Si t'as Visual Studio, tu as entre tes mains le meilleur débuggeur de JS :sol:


 
et je fais comment pour passer ca dasn VS ?

Reply

Marsh Posté le 06-04-2005 à 16:50:41    

Je sais pas :D

Reply

Marsh Posté le 06-04-2005 à 17:14:55    

:pfff:  :D  
 
 
Personne pour les autres problèmes'?
 
Ptit prob. supplémentaire:
 

  • IE ne gère pas la couleur de fond lors du survol...


@++

Reply

Marsh Posté le 06-04-2005 à 19:43:46    

up

Reply

Marsh Posté le 07-04-2005 à 11:42:32    

up

Reply

Marsh Posté le 07-04-2005 à 14:03:08    

reup

Reply

Marsh Posté le 08-04-2005 à 08:52:22    

up

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed