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 :

Comment corriger mon menu en CSS


Sujet :

CSS

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 098
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 098
    Points : 946
    Points
    946
    Par défaut Comment corriger mon menu en CSS
    Bonjour à tous,

    Je cherche faire un menu à deux niveau.
    Le problème que je ne n'arrive pas à résoudre, c'est que le <li> contenant le sous menu, prend la largeur du sous menu.

    Voici m'on explication "en image":
    Menu

    J'aimerais le "Menu 3" garde la meme largeur que les autres, indépendament du nombre de lettres. C'est à dire qu'il y ait le même padding que les autres menu. Mais j'ainerais aussi que le sous menu reste positionné sur son parent, comme c'est affiché maintenant.

    J'ai essayé plusieurs solution avec le position:absolute, float etc, mais sans susccès
    Code HTML : 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
     
    <style type="text/css">
    <!--
    body {
            background-color: #999;
            font-family:Arial, Helvetica, sans-serif;
            font-size:14px;
    }
    #container{
            width:600px;
            margin:auto;
            background-color:#FFF;
            overflow:hidden;
    }
    ul,li{
            margin:0px;
            padding:0px;
    }
    ul#menu{
            float:right;
    }
    li.level1,li.level2{
            list-style-type:none;
            float:left;
            padding:3px 5px 3px 5px;
            border-right:1px solid #000;
    }
     
    li.level2{
    font-size:12px;
    }
    li.last{border:0px;}
    -->
    </style></head>
     
    <body>
    <div id="container">
     
    <ul id="menu">
    <li class="level1">Menu 1</li>
    <li class="level1">Menu 2</li>
    <li class="level1">Menu 3
    <ul>
    	<li class="level2">Bonjour à tous</li><li class="level2">Aurevoir</li><li class="level2 last">Bonsoir</li>
        </ul>
    </li>
    <li class="level1 last">Menu 4</li>
    </ul>

    Auriez-vous une solution?

  2. #2
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 098
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 098
    Points : 946
    Points
    946
    Par défaut
    J'ai plus au moins, réussi à faire mon truc,
    Ce que je n'arrive pas maintenant c'est que mes li enfant soient aligné horizontalement.

    J'aimerais que le #menu li ul ne tienne pas en compte de son li parent, mais du nombre de li enfant.

    Ou que les li enfant, soit du deuxième niveau, ne se mettre pas l'un dessous de l'autre, mais à la ligne

    Voci mes corrections
    Menu
    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
     
    <style type="text/css">
    <!--
    body {
    	background-color: #999;
    	font-family:Arial, Helvetica, sans-serif;
    	font-size:14px;
    }
    #container{
    	width:600px;
    	margin:auto;
    	background-color:#FFF;
    	height:300px;
    }
    ul,li{
    	margin:0px;
    	padding:0px;
    }
    ul#menu{
    	float:right;
    }
    ul#menu li ul{ position:absolute; right:-1px; border-right:1px solid #000;}
     
    li.level1,li.level2{
    	list-style-type:none;
    	display:block;
    	float:left;
     
    	padding:3px 5px 3px 5px;
     
    }
     
    li.level1{position:relative; 	border-right:1px solid #000;}
     
    li.level2{
    font-size:12px;
    }
    li.last{border:0px;}
    -->
    </style></head>
     
    <body>
    <div id="container">
     
    <ul id="menu">
    <li class="level1">Menu 1</li>
    <li class="level1">Menu 2</li>
    <li class="level1">Menu 3
    <ul>
    	<li class="level2">Bonjour à tous</li><li class="level2">Aurevoir</li><li class="level2 last">Bonsoir</li>
        </ul>
    </li>
    <li class="level1 last">Menu 4</li>
    </ul>
    </div>
    Merci

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2012
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2012
    Messages : 93
    Points : 161
    Points
    161
    Par défaut
    Salut pierrot10,

    En faite je n'ai pas très bien compris ton problème, pourrais tu nous faire sous paint le rendu voulu pour une meilleur compréhension ?

Discussions similaires

  1. Comment corriger mon javascript ?
    Par tidus_6_9_2 dans le forum Général JavaScript
    Réponses: 23
    Dernier message: 30/01/2008, 12h42
  2. Comment maîtriser mon menu css correctement ?
    Par Velkan.nexus dans le forum Mise en page CSS
    Réponses: 4
    Dernier message: 01/12/2007, 20h32
  3. comment caler mon menu dans image de fond
    Par criscaro dans le forum Mise en page CSS
    Réponses: 12
    Dernier message: 04/12/2006, 11h49
  4. [W3C] Comment corriger mon erreur d'affichage
    Par jeremy_chauvel dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 19/11/2006, 17h23
  5. Intégrer un Javascript à mon menu deroulant CSS
    Par Dantahoua dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/08/2005, 18h04

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