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 :

[CSS] Taille d'un conteneur selon le contenu


Sujet :

CSS

  1. #1
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut [CSS] Taille d'un conteneur selon le contenu
    Bonjour,
    J'ai un div qui contient le texte de la page qui se creé dynamiquement. Je suis obligé de lui donner une hauteur explicite sinon si je mets "auto" ou "inherit" il se termine juste sous le texte si y a 1 ligne par exemple c'est pas jolie.
    Mais si je mets un texte qui depasse la hauteur donnée, alors mon "footer" (qui vient a la suite du div) se place sous le div et le texte descend par dessus....bref
    Quelqu'un voit se que je veux dire ?
    Merci pour votre aide

  2. #2
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    J'ai dejà été confronté à ce problème, que j'ai résolu en mettant

    Dans le CSS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #vide {
        clear:both;
    }
    Et le html (à mettre à la fin du conteneur)

  3. #3
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut
    Salut, tu pourrais m'expliquer un bon plus ce que ca fait histoire que je comprenne ? merci

  4. #4
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    Et si tu montrais un peu ton code ou un exemple plutot ?

  5. #5
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut
    Ok je te mets dans l'ordre d'imbrication :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    div#container {height: inherit; width: 977px; margin-top: 0; margin-bottom: auto; margin-left: auto; margin-right: auto; padding: 0; border: 5px #FFFF99; background: white;}
     
    div#main {  height:1000px; margin: 0; position:relative; padding-top: 10px; padding-left: 10px; margin-right: 230px;  color: black; background: url(images/square_map.gif) 50% 100% no-repeat white; border-left: 2px solid #376B9D; font-family:Georgia, Arial, Helvetica, sans-serif; font-size: 14px;}
    L'architecture c'est comme ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <div id="container">
     
    <div id="main"></div>
    </div>

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    284
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 284
    Points : 349
    Points
    349
    Par défaut
    le position: relative fait que ton div sort du flow et s'affiche sans influer sur le positionnement des autres elements. Si tu enleves cette declaration , le <div id="container"> s'agrandira pour contenir integralement le <div id="main"> et tout le reste du contenu.
    Nicolas

  7. #7
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut
    si je fais cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    div#main { margin: 0;  padding-top: 10px; padding-left: 10px; padding-right: 10px;color: black;   }
    alors ma page devient vide s'il n'y a plus de texte !

  8. #8
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    Essaies ça

    Pour le CSS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #vide {
        clear:both;
    }
    Le HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <div id="container">
       le conteneur
       <div id="main">le main</div>
       <div id="vide"></div>
    </div>
    (Sans rien ajouter entre les balise <div id="vide"> et </div>)

  9. #9
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut
    Non ca change rien.
    Moi je veuxx juste que la hauteur de ma page s'adapte aux contenu texte, et que s'il n'y a pas de contenu que la hauteur ne soit pas nulle.

  10. #10
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    Citation Envoyé par guy2004
    Moi je veuxx juste que la hauteur de ma page s'adapte aux contenu texte
    Le code que je t'ai mis juste au dessus permet d'adapter la hauteur du div selon ton contenu (texte)

    Citation Envoyé par guy2004
    s'il n'y a pas de contenu que la hauteur ne soit pas nulle
    Tu peux spécifier un min-height à ton conteneur (mais de fonctionne que pour IE, on doit rajouter un p'tit ...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	_height:200px; /* pour IE */
    	min-height:200px;

  11. #11
    Membre averti Avatar de guy2004
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    805
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 805
    Points : 377
    Points
    377
    Par défaut
    Merci pour cette proprieté que je ne connaissais pas.
    En fait je mets juste un minimum et puis ca va.
    merci

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 20/04/2009, 14h50
  2. Réponses: 41
    Dernier message: 24/05/2007, 13h27
  3. taille des textbox selon leur contenu
    Par christi dans le forum ASP.NET
    Réponses: 4
    Dernier message: 08/02/2007, 16h20
  4. [HTML/CSS] Taille d'un <div> en fonction de son contenu
    Par hedgehog dans le forum Mise en page CSS
    Réponses: 12
    Dernier message: 14/12/2006, 18h57
  5. [css] taille du contenu adaptée à celle du conteneur ?
    Par ghohm dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 11/09/2006, 09h35

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