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 :

Longueur d un panneau lateral = longueur de son conteneur


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de ben.IT
    Homme Profil pro
    Inscrit en
    Janvier 2009
    Messages
    431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 431
    Par défaut Longueur d un panneau lateral = longueur de son conteneur
    Bonjour à tous, je débute en css. Pour m'exercer je souhaiterais réaliser une css, ou il y aurait 2 zones. Une zone 1 pour le titre et menu et une zone 2 pour le contenu.

    Cette zone est composée de 2 éléments latéraux (elementg et elementd), ce que je souhaiterai, c'est que c'est 2 éléments aient la même longueur que leur conteneur, c'est a dire zone2. Lorsque j'affiche ma page, ils ne font a que une ligne de hauteur et je ne veux pas mettre une hauteur en pixel, pour que la hauteur des panneaux latéraux suivent celle du contenu.

    Comment faire pour obtenir cela ??


    code 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
    #zone1 {
    	height:150px;
    	text-align:center;
    	background-color:#00CCFF; /* bleu ciel */
    	}
     
    #zone2 {
    	background-color:#FF6666; /* rouge */
    	text-align:center;
    	}
     
    #elementg {
    	float:left;
    	width:140px;
    	text-align:center;
    	background-image:url(deg_g.png);
    	}
     
    #elementd {
    	float:right;
    	width:140px;
    	text-align:center;
    	background-image:url(deg_d.png);
     
    	}
    code 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
    <body>
     
    <div id="zone1">riri</div>
    <br><br><br>
    <div id="zone2">
    		<div id="elementg">gauche</div>
    		<div id="elementd">droite</div>
    	bla blablalbalbla bla alb alblabla balba l balblalba l abl albl b albl b blba blabalblablal balb labl ab lab labl alblabl abl al
    	balb albalbablabl bl blabl a ll abla b lab la blabla blab ab lalba l blablablalb albl  balblab l bl bl blal ba lb b b  b b blbalabl all
    	b alb ab la lab alb ab lab lab lba lbalalbabl l blab lablab lab lab lb la blab la lba lb lab lbl b ablb lab alb alb lablab lba lab la al
     
    </div>
     
    </body>
    merci d'avance

  2. #2
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2009
    Messages
    121
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2009
    Messages : 121
    Par défaut
    As-tu essayé de mettre une taille fixe a ta zone 2 (en pixel), puis de remplacer les tailles fixes de tes deux elements par des tailles dynamiques (en %) ?

    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
    #zone1 {
    	height:150px;
    	text-align:center;
    	background-color:#00CCFF; /* bleu ciel */
    	}
    	
    #zone2 {
            width:280px;
    	background-color:#FF6666; /* rouge */
    	text-align:center;
    	}
    	
    #elementg {
    	float:left;
    	width:50%;
    	text-align:center;
    	background-image:url(deg_g.png);
    	}
    	
    #elementd {
    	float:right;
    	width:50%;
    	text-align:center;
    	background-image:url(deg_d.png);
     
    	}

  3. #3
    Membre éclairé Avatar de ben.IT
    Homme Profil pro
    Inscrit en
    Janvier 2009
    Messages
    431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 431
    Par défaut
    merci de ta réponse mais ce n'est pas un problème de largeur que je rencontre, ce que je souhaiterai c'est les panneaux latéraux aient la même hauteur que le contenu de la zone 2 comme sur ce schéma :


    voici ce que j'obtiens :


    comment faire pourque la zone contenant le degradé gris ait la meme hauteur que la zone2 (en rouge) contenant le contenu ???

    Merci.

  4. #4
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Par défaut
    Bonjour,

    Rajoute un 3éme conteneur #elementc doté de contexte de formatage block afin de calculer sa position par rapport à ses deux adjacents flottants (overflow:hidden fera l'affaire) :

    Code xhtml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    		<div id="elementg">gauche</div>
    		<div id="elementd">droite</div>
    		<div id="elementc">
    		bla blablalbalbla bla alb alblabla balba l balblalba l abl albl b albl b blba blabalblablal balb labl ab lab labl alblabl abl al
    		balb albalbablabl bl blabl a ll abla b lab la blabla blab ab lalba l blablablalb albl  balblab l bl bl blal ba lb b b  b b blbalabl all
    		b alb ab la lab alb ab lab lab lba lbalalbabl l blab lablab lab lab lb la blab la lba lb lab lbl b ablb lab alb alb lablab lba lab la al
    		</div>

    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #elementc { overflow:hidden }

    Ensuite, pour que cela fonctionne sous IE6 et versions inférieurs, faudrait donner le Layout à #elementc via un zoom:1 par exemple et annuler l'overflow:hidden :

    Code xhtml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <!--[if lte IE 6]>
    <style type="text/css" media="screen">
    	#elementc { 
    		zoom:1;
    		overflow:auto;
    	}
    </style>
    <![endif]-->

    Le commentaire conditionnel est à placer avant </head>.

  5. #5
    Membre éclairé Avatar de ben.IT
    Homme Profil pro
    Inscrit en
    Janvier 2009
    Messages
    431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Janvier 2009
    Messages : 431
    Par défaut
    Bonjour et merci de ta réponse,
    j'ai intégré tes modifications au code mais cela n'a rien fait de plus, les éléments latéraux n'occupent pas la même hauteur que l'élément central...

  6. #6
    Rédacteur
    Avatar de Macmillenium
    Homme Profil pro
    Développeur front-end
    Inscrit en
    Mars 2008
    Messages
    2 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur front-end
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2008
    Messages : 2 333
    Par défaut
    Citation Envoyé par benilto Voir le message
    j'ai intégré tes modifications au code mais cela n'a rien fait de plus, les éléments latéraux n'occupent pas la même hauteur que l'élément central...
    Montre ton nouveau code stp

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

Discussions similaires

  1. recherche composant pour faire un panneau lateral
    Par g_gau dans le forum Composants VCL
    Réponses: 3
    Dernier message: 26/11/2009, 20h43
  2. Réponses: 1
    Dernier message: 19/12/2006, 22h19
  3. Redimensionner JButton dans son conteneur
    Par chico_du_33 dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 09/12/2006, 18h40
  4. image en fond qui prenne toute la place de son conteneur
    Par funckfot dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 05/04/2006, 14h04
  5. Probleme panneau lateral Firefox et IE
    Par cedre22 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 17/03/2006, 10h54

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