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 :

Problème de hauteur de div flottante en %


Sujet :

Dimensionnement en CSS

  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 6
    Points
    6
    Par défaut Problème de hauteur de div flottante en %
    Bonjour à tous,

    J'ai un petit souci avec la hauteur de mes div flottante en %.
    J'ai une div 'global' qui contient toutes les autres div :
    'header',
    'header',
    'middle',
    'footer'
    et 2 div de décoration 'left' et 'right' paramétrées respectivement en float:left et float:right pour faire un effet d'ombre sur les cotés de ma colonne (dans ces div il y a une image répétée verticalement).

    C'est avec ces 2 div flottantes que j'ai un problème. Elle ne prennent pas toute la taille de ma div global. Si je spécifie une taille en px pas de problème elles apparraissent bien. Mais mon contenu est variable donc j'aimerais que ces div prennent 100% de la div global ! si je met height:100% dans ces div elle n'apparaissent pas sous Firefox et sont minuscule (environ 10px) sous IE.
    Quelqu'un aurait une idée ?

    Merci !

    Code CSS :

    @charset "utf-8";
    /* CSS Document */

    html,body{
    background-color:#CCCCCC;
    height:100%;
    margin-top:0px;
    margin-bottom:0px;
    font-family: Arial, Helvetica, sans-serif;
    font-size:13px;
    }

    div#global{
    min-height:100%;
    background-color:#999999;
    margin-right:auto;
    margin-left:auto;
    width:732px;


    }


    div#left{


    width:15px;
    background-image:url(img/motif_divgauche.jpg);
    background-repeat:repeat-y;
    float:left;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #000000;
    }

    div#right{


    width:15px;
    background-image:url(img/motif_divdroite.jpg);
    background-repeat:repeat-y;
    float:right;

    border-left-width: 1px;
    border-left-style: solid;
    border-left-color: #000000;
    }


    div#header{
    width:700px;
    height:155px;
    margin-left:auto;
    margin-right:auto;
    background-image:url(img/banniere.jpg);
    }

    div#menu{
    background-image:url(img/fond_menu.jpg);
    text-align:center;
    width:700px;
    height:45px;
    margin-left:auto;
    margin-right:auto;
    background-color:#FFFFFF;
    border-top-width: 1px;
    border-bottom-width: 1px;
    border-top-style: solid;
    border-bottom-style: solid;
    }

    div#middle{
    min-height:70%;
    width:700px;
    margin-left:auto;
    margin-right:auto;
    background-color:#D6D6D6;
    }


    div#footer {
    height:50px;

    width:700px;
    margin-left:auto;
    margin-right:auto;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 10px;
    font-style: italic;
    text-align:center;
    border-top-width: 1px;
    border-top-style: solid;
    border-top-color: #000000;
    }
    et le html :

    <div id="global">
    <div id="left"></div>
    <div id="right"></div>
    <div id="header"></div>
    <div id="menu"></div>
    <div id="middle">
    test
    </div>
    <div id="footer"></div>
    </div>

  2. #2
    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 : 38
    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
    Points : 3 748
    Points
    3 748
    Par défaut
    Bonsoir,

    la hauteur en % ne peut être appliquée que sur des éléments dans le flux naturel ou positionné en absolute, relative et fixed. Pas en float.

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 6
    Points
    6
    Par défaut coutournement
    d'accord, merci pour cette précision.

    Il y a-t-il un moyen de contournement ?

  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 : 38
    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
    Points : 3 748
    Points
    3 748
    Par défaut
    Citation Envoyé par manu-lyon Voir le message
    Il y a-t-il un moyen de contournement ?
    Sa dépend des cas, si c'est une histoire de background, tu peux tricher et mettre une image de 1px d'hauteur qui regroupe tous les background et la répéter sur le bloc conteneur

  5. #5
    Futur Membre du Club
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 6
    Points
    6
    Par défaut aprec
    Voila le rendu sous IE : on voit en haut le début de mes div left et right. Aucun moyen de les faire arriver jusqu'en bas ???




  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 : 38
    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
    Points : 3 748
    Points
    3 748
    Par défaut
    Regarde dans la capture ci-joint, tu prend la partie en rouge (que tu vide à l'intérieur) et tu l'a répète sur la div global.
    Images attachées Images attachées  

  7. #7
    Futur Membre du Club
    Inscrit en
    Février 2009
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 10
    Points : 6
    Points
    6
    Par défaut OK
    OK, je vais faire ainsi, ca me parait simple.
    Pour ma culture perso il y a d'autres moyens ?

    En tout cas merci pour ton aide !

  8. #8
    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 : 38
    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
    Points : 3 748
    Points
    3 748
    Par défaut
    Citation Envoyé par manu-lyon Voir le message
    Pour ma culture perso il y a d'autres moyens ?
    A part le positionnement absolute relative fixed et les éléments dans le flux ...
    Y a aussi la propriété display:inline-block

  9. #9
    Membre émérite
    Avatar de Candygirl
    Femme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 912
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 52
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 912
    Points : 2 907
    Points
    2 907
    Par défaut
    Citation Envoyé par Macmillenium Voir le message
    Bonsoir,

    la hauteur en % ne peut être appliquée que sur des éléments dans le flux naturel ou positionné en absolute, relative et fixed. Pas en float.
    Hello,

    As-tu des sources pour appuyer cette déclaration ? Pour ma part je pense que cela n'a rien à voir avec le float, mais avec le fait que le parent doit posséder un height explicite pour qu'un height en % se voit appliqué (ce qui n'est pas le cas ici pour #global):

    Citation Envoyé par css2
    Spécifie une hauteur en pourcentage. Celui-ci est calculé en fonction du bloc conteneur de la boîte générée. Si la hauteur du bloc conteneur n'est pas spécifiée explicitement (c.à.d., celle-ci dépendant de la hauteur du contenu), sa valeur est considérée comme étant 'auto' ;
    Mais préférer la référence plus récente:

    Citation Envoyé par css2.1
    Specifies a percentage height. The percentage is calculated with respect to the height of the generated box's containing block. If the height of the containing block is not specified explicitly (i.e., it depends on content height), and this element is not absolutely positioned, the value computes to 'auto'. A percentage height on the root element is relative to the initial containing block.

  10. #10
    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 : 38
    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
    Points : 3 748
    Points
    3 748
    Par défaut
    Bonjour,

    Citation Envoyé par Candygirl Voir le message
    Pour ma part je pense que cela n'a rien à voir avec le float, mais avec le fait que le parent doit posséder un height explicite pour qu'un height en % se voit appliqué (ce qui n'est pas le cas ici pour #global):
    Oui en effet,
    Merci pour ces précisions

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

Discussions similaires

  1. Problème de hauteur de div et de margin-bottom.
    Par jdecout dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 22/04/2009, 23h56
  2. Problème de hauteur sur divs imbriqués
    Par Kahlyv dans le forum Mise en page CSS
    Réponses: 10
    Dernier message: 27/11/2008, 18h00
  3. CSS : problème de hauteur de DIV avec Internet Explorer
    Par raton_laveur dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 17/11/2008, 16h12
  4. problème de hauteur de div
    Par ph_anrys dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 28/02/2007, 10h51
  5. Problème de hauteur de div et pied de page
    Par Bishop dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 08/03/2005, 15h30

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