creer un menu horizontal déroulant, comme sur ce site, css ou js?

creer un menu horizontal déroulant, comme sur ce site, css ou js? - HTML/CSS - Programmation

Marsh Posté le 20-04-2009 à 13:56:31    

bonjour a tous, je veux faire des menus déroulants comme sur le site http://www.easy-muscu.com/
mais comment ??? pour faire le machin rouge avec les bords arrondis...
avec du JS (et dans ce cas la j'utiliserais ca : <!--[if lte IE 6]><![endif]--> ) ou du css ?????
 
je cherche depuis des jours mais je en trouve pas...
 
merci d'avance

Reply

Marsh Posté le 20-04-2009 à 13:56:31   

Reply

Marsh Posté le 20-04-2009 à 14:16:37    

Tu cherche mal ^^
La reponse est JS + CSS... Tu as plusieurs solutions...
Les plus "belles" se font grâce à JQuery (avis personnel)...
C'est celui que j'ai utilisé pour un site : SPAM (si tu veux voir ce que ça donne)
Dans tous les cas, je te suggère http://www.alsacreations.com ...


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 20-04-2009 à 14:39:30    

et pour faire exactement celui qu'il ya  sur le site que j'ai donné ?

Reply

Marsh Posté le 20-04-2009 à 15:07:04    

No-fonte a écrit :

et pour faire exactement celui qu'il ya  sur le site que j'ai donné ?


http://www.pompage.net/pompe/deroulants/
Voila, c'est exactement ça, un contenu masqué, sauf lors du survol de son parent...
Pour les bord arrondi, à toi de faire le CSS adéquat
Pour le lien que je t'ai montré, c'est exactement le meme principe, sauf que je rajoute Jquery pour ajouter un effet de transition (ici, une translation et un fondu)...


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 20-04-2009 à 15:31:39    

au niveau du css, on peut faire le machin avec les bords arrondis... ?????
moi je pensais a le faire avec toshop non ?

Reply

Marsh Posté le 20-04-2009 à 15:38:22    

Oula... Tu compare Photoshop au CSS...
Le CSS servira à mettre en forme ce que tu exporteras de photoshop... pas à le remplacer...
Fais tu bien la distinction entre HTML, CSS, Images, Textes, JS ... ?


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 20-04-2009 à 15:51:25    

oui oui  
mais je croyasi que le cadre rouge était a creer avec photoshop

Reply

Marsh Posté le 20-04-2009 à 17:05:58    

Oui, c'est le cas, enfin, Photoshop est un peu chère pour faire un arrondi... On s'est compris..


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 20-04-2009 à 18:13:27    

oui mais je l'ai... on s'est compris :D

Reply

Marsh Posté le 20-04-2009 à 19:14:08    

meme avec ton lien je n'arrive pas :@

Reply

Marsh Posté le 20-04-2009 à 19:14:08   

Reply

Marsh Posté le 20-04-2009 à 19:36:25    

C'est un forum qui à pour vocation d'être cool, mais on ne peut rien faire de plus... On ne peut pas faire plus simple que ce tuto...
-Tu connais assez bien le HTML, ses balises ?
-Tu connais assez bien le JS ? tu connais son rôle ? sa manière d'interagir sur le HTML ?
-Tu connais assez bien le CSS ?
Il faut peut-être que tu commences par apprendre les bases avant de pousser les choses...


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 20-04-2009 à 19:39:12    

html ok et css ok, j'avoue que le JS non

Reply

Marsh Posté le 20-04-2009 à 20:16:03    

Met en forme ta page avec tes bouton, et on t'aideras.
Pour ne pas faire de grosse betises, je te donnes quelques consignes :
- Tous les boutons du menu doivent être dans une div dont la taille est définie.
- Le menu doit de cette forme (à base de ul/li) :

Code :
  1. <ul id="menu">
  2.  <li><a href="#">Menu 1</a>
  3.     <ul>
  4.          <li><a href="#">Sous-menu 1-1</a></li>
  5.          <li><a href="#">Sous-menu 1-2</a></li>
  6.          <li><a href="#">Sous-menu 1-3</a></li>
  7.     </ul>
  8.  </li>
  9.  <li><a href="#">Menu 2</a>
  10.     <ul>
  11.          <li><a href="#">Sous-menu 2-1</a></li>
  12.          <li><a href="#">Sous-menu 2-2</li>
  13.          <li><a href="#">Sous-menu 2-3</li>
  14.     </ul>
  15.  </li>
  16. .....
  17. </ul>


- Designe le tout en CSS, masque les sous-menu (li>ul) et on verra comment ajouter l'interactivité en JS


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 21-04-2009 à 14:35:23    

voila ou j'en suis :
http://playmusculation.olympe-netw [...] 0Max/site/
 
je voudrais que le sous menu soit aligné, et que tous les sous menus apparaissent dans un carré comme ca (plus ou moins long selon le nombre de sous menus)
http://yfrog.com/06sanstitre1gsgj
voici le html :

Code :
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
  5. <head>
  6.      
  7.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  8.  <title>Play-musculation</title>
  9.         <link href="style.css" rel="stylesheet" type="text/css" media="screen">
  10. </head>
  11. <body>
  12.     <div id="header"><!-- DIV du Header --></div>
  13. <d
  14. </div>
  15. <div id="conteneur"><!-- DIV du Conteneur -->
  16.  <div id="menu">
  17.             <ul>
  18.                 <li><a href="#">Débutants</a></li>
  19.                 <li><a href="#">Materiel</a>
  20.             <ul>
  21.                 <li><a href="#">Banc</a></li>
  22.                 <li><a href="#">Barres</a></li>
  23.                 <li><a href="#">Fonte</a></li>
  24.             </ul>
  25.                 </li>
  26.                 <li><a href="#">Blessures</a></li>
  27.             </ul>
  28.         </div>
  29.     </div>
  30. </div>
  31. </body>
  32. </html>


 
et voici le css:

Code :
  1. body {
  2.      background:url(theme/interface/bg.png) repeat-x;
  3.  margin:0;
  4.  padding:0;
  5.  font-family:Verdana, Geneva, sans-serif;
  6.  font-size:9px;
  7.  }
  8. #header {
  9.     height:233px;
  10. background:url(theme/interface/header.png) no-repeat top center;
  11. }
  12. #conteneur{
  13.     width:990px;
  14. margin:0 auto;
  15. }
  16. #menu ul li{
  17.     list-style:none;
  18. float:left;
  19. padding:0;
  20. }
  21. #menu ul li a{
  22.     height:49px;
  23. width:130px;
  24. font-family:Segoe Script, Verdana, Arial;
  25. text-align:center;
  26. font-size:16px;
  27. font-weight:bold;
  28. text-decoration:none;
  29. text-align:center;
  30. display:block;
  31. background:url(theme/interface/menu.png)no-repeat top left;
  32. line-height:49px;
  33. color:#FFFFFF
  34. }
  35. #menu ul li ul {
  36. display:none;
  37. }
  38. #menu ul li:hover ul {
  39. display:block;
  40. }
  41. #menu li:hover ul li {
  42. float:none;
  43. }
  44. }
  45. #menu ul li a:hover{
  46. font-size:18px;
  47. color:#ad2034;
  48. }
  49. #menu li ul {
  50. position:absolute;
  51. }


Reply

Marsh Posté le 21-04-2009 à 15:13:09    

Voici un exemple assez sophistiqué:
http://www.stunicholls.myby.co.uk/

Reply

Marsh Posté le 21-04-2009 à 15:58:33    

no-font, seul "materiel" contiendra un sous menu ?
D'ailleur, décale le ul/li qu'il contient, pour ne pas croire qu'il sont au même niveaux que les autres (c'est juste pour l'œil, ça donnera le meme resultat)...
Sinon, l'arrondie en haut à gauche ne sera pas esthétique...
Il faut que tu fasse le découpage de ce bloc rouge d'ailleurs, pour le rentre extensible, à moins que tous tes sous-menu contienne le même nombre de bouton...


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 21-04-2009 à 16:04:33    

eu non, tous contiendrons des sous menus, la c'est pour tester.
comment le découper pour le rendre extensible.
et apres comment l'integrer au code ?

Reply

Marsh Posté le 21-04-2009 à 19:14:07    

et au fait, si il ya des tutos, j'adore ce que zeborg a passé :P

Reply

Marsh Posté le 21-04-2009 à 19:36:23    

Bah, je t'en ai donné un de tuto, ça n'a pas vraiment marcher :o


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 21-04-2009 à 19:58:30    

pas pour ce style la, et non c an'a pas marché

Reply

Marsh Posté le 21-04-2009 à 20:01:28    

Apprend le HTML et le CSS qui te permettra de mettre en forme ce menu...
Normalement, le seul truc qui te bloquait, c'était l'interaction des menu...
T'as trouvé une parade avec le :hover, mais ça ne suffira pas à cause d'IE 6...
Utilise tout de même ce hover, on t'apprendra une fois que ça sera fonctionnel sur Firefox, à utiliser une autre methode universelle (qui ne changera que très peu ton code)...
Bon, j'ai peut etre abusé de te donner la contrainte de construire en UL / LI, mais je croyais que tu te demerdait bien en HTML/CSS, utilise des divs si t'es plus à l'aise, mais ça te donnera une mauvaise habitude...
Si tu fais en DIV, l'important, c'est de faire une div par bouton, qui elle meme contient la div du sous-menu (masqué, ou pas)...


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 21-04-2009 à 20:08:05    

No-fonte a écrit :

pas pour ce style la, et non c an'a pas marché


Tu trouveras jamais un tuto pour faire exactement ce que tu trouveras sur chaque site...
mais tu trouve la methode...
Les base des menus partent souvent d'un même principe, seule les combinaisons son infinies...
Ici, le but de mon tuto est d'apprendre à changer le comportement d'une div lors d'un survol de la souris... Le site cité plus haut, c'est la même chose.
La mise en forme change.


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 21-04-2009 à 20:15:30    

Je viens de voir ton profil, si tu as vraiment l'age indiqué, c'est que tu n'as evidemment pas eu de formation au web... Tu apprend donc en amateur, je te suggère donc de passer par le siteduzero.com...


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 21-04-2009 à 20:36:26    

j'ai 14 ans  
et j'ai commencé par le site du zero, que ce soit pour le c++ le xhtml/css ou le php/mysql , j'ai commencé par la

Reply

Marsh Posté le 21-04-2009 à 21:00:30    

J'ai réussi a foutre ca en horizontal, mais comment enlever le style, donc les onglet aux sous menus, pour ne creer que tu texte???????? (comme sur le lien de zeborg)
voici le site actuel :http://playmusculation.olympe-network.com/design/Nouveau%20dossier/
et voici le css actuel:

Code :
  1. body {
  2.      background:url(theme/interface/bg.png) repeat-x;
  3.  margin:0;
  4.  padding:0;
  5.  font-family:Verdana, Geneva, sans-serif;
  6.  font-size:9px;
  7.  }
  8. #header {
  9.     height:233px;
  10. background:url(theme/interface/header.png) no-repeat top center;
  11. }
  12. #conteneur{
  13.     width:990px;
  14. margin:0 auto;
  15. }
  16. #menu ul li{
  17.     list-style:none;
  18. float:left;
  19. padding:0;
  20. }
  21. #menu ul li a{
  22.     height:49px;
  23. width:130px;
  24. font-family:Segoe Script, Verdana, Arial;
  25. text-align:center;
  26. font-size:16px;
  27. font-weight:bold;
  28. text-decoration:none;
  29. text-align:center;
  30. display:block;
  31. background:url(theme/interface/menu.png)no-repeat top left;
  32. line-height:49px;
  33. color:#FFFFFF
  34. }
  35. #menu ul li ul {
  36. display:none;
  37. }
  38. #menu ul li:hover ul {
  39. display:block;
  40. }
  41. #menu li:hover ul li {
  42.     background:none;
  43. }
  44. #menu ul li a:hover{
  45. font-size:17px;
  46. color:#ad2034;
  47. }
  48. #menu li ul {
  49. position:absolute;
  50. }


et voici le html actuel :

Code :
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
  5. <head>
  6.      
  7.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  8.  <title>Play-musculation</title>
  9.         <link href="style.css" rel="stylesheet" type="text/css" media="screen">
  10. </head>
  11. <body>
  12.     <div id="header"><!-- DIV du Header --></div>
  13. <d
  14. </div>
  15. <div id="conteneur"><!-- DIV du Conteneur -->
  16.  <div id="menu">
  17.             <ul>
  18.                 <li><a href="#">Débutants</a></li>
  19.                 <li><a href="#">Materiel</a>
  20.                     <ul>
  21.                         <li><a href="#">Banc</a></li>
  22.                         <li><a href="#">Barres</a></li>
  23.                         <li><a href="#">Fonte</a></li>
  24.                     </ul>
  25.                 </li>
  26.    <li><a href="#">Blessures</a></li>
  27.                 <li><a href="#">Programmes</a></li>
  28.    <li><a href="#">Exercices</a></li>
  29.    <li><a href="#">Nutrition</a></li>
  30.    <li><a href="#">Endurance</a></li>
  31.             </ul>
  32.         </div>
  33.     </div>
  34. </body>
  35. </html>


Message édité par No-fonte le 21-04-2009 à 21:02:02
Reply

Marsh Posté le 21-04-2009 à 23:31:02    

Dans ton CSS tu as "#menu ul li a"... c'est valable pour toutes les balises a dans les li dans #menu... Ainsi,  les <a> de ton sous menu hérite aussi de ce style... alors :
Soit tu remplace de dernier cité par "#menu>ul>li> a" ... Le > signifie "directement dans", à savoir que ce ne sera pas hérité aux enfants...
Soit tu redefini le style des sous-lien en leur donnant une classe que tu skin en CSS.
 
Par-contre, il faut savoir ce que tu veux au final... si tu veux qu'on t'aiguille !


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 22-04-2009 à 08:42:16    

au final je veux exactement comme le lien de zeborg
c'est a dire, que ca s'écrit dans une barre en dessous, sous formes de liens, et que si la souris passe sur ces liens, ca ouvre un rectangle (comme le rouge) avec d'autres liens
 
comment redefinir le style ???


Message édité par No-fonte le 22-04-2009 à 08:42:42
Reply

Marsh Posté le 22-04-2009 à 09:39:45    

Vu que les liens du site en question ne sont pas fonctionnelles...
Pour faire la même chose fonctionnelles, il faut de l'AJAX, pour ne pas recharger la page après avoir cliqué sur un lien, et ça tu n'as le niveau...
Tu peux toujours faire la même chose, sauf que si rien n'est survolé, il n'y aura aucun sous menu affiché...
 
Mais même, de manière générale, exerce toi en commençant par le début, je ne vois pas l'intérêt de te guider sur un truc que tu ne comprendras pas... J'ai souvent le temps de débloquer les gens, mais pas assez pour leur apprendre tout. dsl.


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 22-04-2009 à 15:21:54    

meme la meme chose ou ca apparait que lors d'un survol

Reply

Marsh Posté le 22-04-2009 à 21:00:21    

ok, je te ferais un .html commenté, mais promet moi de ne pas recopier betement ...
Essayer de comprendre mon code, monsieur qui mari un beau Quad-core avec une CM toute moche et ridée !
Au final, ça sera en PHP ou HTML ?


Message édité par abais le 22-04-2009 à 21:02:27

---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 22-04-2009 à 22:10:22    

html, j'ai marié avec la carte que j'avais avant, j'avais pas 1000 euros :P
je change progressivement
 

Reply

Marsh Posté le 23-04-2009 à 17:25:58    

Et voila, n'hesite pas à me demander pour les point que tu comprend pas, je t'expliquerai si j'ai le temps...
=> http://urfman.free.fr/fhw/menuOnglet.html

 

Bon, c'est assez moche, mais c'est pas l'important, tu fera pareil avec tes images à toi...
Le :hover du CSS faisait en sorte que l'element revenais par defaut quand on sortait la souris, je ne l'ai donc pas utilisé et tout fais en JS !


Message édité par abais le 23-04-2009 à 17:58:26

---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 23-04-2009 à 17:28:23    

On peut aussi selectionné un menu par defaut...
Il suffit de provoquer la fonction à l'evenement "onload" du body, en inserant comme argument (le truc entre parenthèse) l'élement en question !


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 23-04-2009 à 17:58:03    

MAJ du fichier :)


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 23-04-2009 à 18:32:24    

merci beaucoup, j'analyse ca :P

Reply

Marsh Posté le 23-04-2009 à 18:50:40    

et re MAJ ! (ptite erreur au commentaire et tout...)
Tu connaissais le pricipe des boucle ?
Des fonctions avec arguments ?


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 23-04-2009 à 18:53:50    

boucles non, fonctions avec argument, heureusement qu'elles existent

Reply

Marsh Posté le 23-04-2009 à 18:59:30    

T'as tout compris donc ? je peux etre fièr de moi  ? :d


Message édité par abais le 23-04-2009 à 19:24:32

---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le 23-04-2009 à 19:08:15    

^^

Citation :

fière


 
tu est une fille ?

Reply

Marsh Posté le 23-04-2009 à 19:24:21    

oups


---------------
Le membre ci-contre n'est pas responsable du message ci-dessus.
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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