IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Mise en page CSS Discussion :

Expanding vertical menu en CSS/javascript


Sujet :

CSS

  1. #1
    Membre éclairé Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Par défaut Expanding vertical menu en CSS/javascript
    Bonjour à tous,

    Je suis entrain de faire un menu en css avec une petite fonction hide/show du sous-menu.
    Je souhaiterai en fait pouvoir lors d'un clic sur le menu parent que le sous-menu décale les éléments (menus parents suivants) en dessous pour y insérer ensuite ces fameux éléments composants ce sous-menu...

    Pour l'instant, le sous-menu apparait mais ne décale pas les menus parents du dessous

    HTML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    <div id="menu_nav">
        <ul>
            <li><a href="index.php?cat=metier&mode=statuts" class="current">Statuts de la Profession</a></li>
            <li><a href="index.php?cat=metier&mode=conducteur">Devenir Conducteur</a></li>
            <li><a href="index.php?cat=metier&mode=exploitant">Devenir Exploitant</a></li>
            <li><a href="#" onclick="showHide('sous_menu')">Le C.C.P.C.T.</a>
                <ul id="sous_menu" class="hide">
                    <li><a href="#" class="submenu">Lien1</a></li>
                    <li><a href="#" class="submenu">Lien2</a></li>
                    <li><a href="#" class="submenu">Lien3</a></li>
                    <li><a href="#" class="submenu">Lien4</a></li>
                </ul>
            </li>
            <li><a href="index.php?cat=metier&mode=ecoles">Les Ecoles de Taxis</a></li>
        </ul>
    </div>
    CSS :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
     
    #menu_nav {
        padding:0px;
        margin:0px;
    }
     
    #menu_nav ul {
        list-style: none;
        margin: 0;
        padding: 0;
        }
     
    #menu_nav ul li {
        padding-bottom:10px;
        height:32px;
        display:block;
        }
     
    #menu_nav {
        width: 240px;
        margin: 10px;
        }
     
    #menu_nav li a {
        text-decoration: none;
        font-size:14px;
        height:24px;
        padding-top:8px;
        padding-left:10px;
    }    
     
    #menu_nav li a:link, #menu_nav li a:visited {
        color: #4D4D4D;
        text-align:left;
        display: block;
        background:  url(../images/menu10.gif);
        }
     
    #menu_nav li a:hover {
        color: #FF9834;
        padding-right:10px;
        text-align:right;
        background:  url(../images/menu10_hover.gif);
        font-weight:bold;
    }
     
    #menu_nav li a.current {
        padding-right:10px;
        text-align:right;
        background:  url(../images/menu10_hover.gif);
        font-weight:bold;
    }
     
    .submenu{
    background-image: url(images/submenu.gif);
    display: block;
    height: 19px;
    margin-left: 38px;
    padding-top: 2px;
    padding-left: 7px;
    color: #333333;
    }
     
    .hide{
    display: none;
    }
     
    .show{
    display: block;
    }
    Javascript (même si inutile car fonctionnel) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    <script language="JavaScript" type="text/JavaScript">
    <!--
    menu_status = new Array();
    function showHide(theid){
        if (document.getElementById) {
        var switch_id = document.getElementById(theid);
     
            if(menu_status[theid] != 'show') {
               switch_id.className = 'show';
               menu_status[theid] = 'show';
            }else{
               switch_id.className = 'hide';
               menu_status[theid] = 'hide';
            }
        }
    }
     
    //-->
    </script>
    Merci pour votre aide !

  2. #2
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Il faut que tu passes la hauteur du li à auto et non pas garder la valeur fixe en px.

  3. #3
    Membre éclairé Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Par défaut
    quel <li> ? celui du menu principal ou celui du sous-menu ?

  4. #4
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Du principal.

  5. #5
    Membre éclairé Avatar de rems033
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    513
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2007
    Messages : 513
    Par défaut
    En fait c'est le <li> du menu principal...tout fonctionne nickel maintenant, merci Bisunurs !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Génialissime : tree menu vertical interactif 100%css 0%javascript
    Par LadyWasky dans le forum Mise en page CSS
    Réponses: 0
    Dernier message: 09/08/2010, 13h02
  2. Expanding vertical menu en CSS/javascript
    Par rems033 dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 07/11/2008, 11h34
  3. Menu en CSS, Javascript ou les 2 ?
    Par senacle dans le forum Mise en page CSS
    Réponses: 16
    Dernier message: 14/08/2008, 16h08
  4. Réponses: 10
    Dernier message: 19/05/2008, 14h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo