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 :

Div avec overflow: contenu qui dépasse sous FF


Sujet :

CSS

  1. #1
    Membre extrêmement actif Avatar de cortex024
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 301
    Points : 1 119
    Points
    1 119
    Par défaut Div avec overflow: contenu qui dépasse sous FF
    Bonjour,

    j'ai une div plus générale qui englobe.
    dans cette div, j'ai 3 div une au dessous de l'autre.
    en gros, un header et un footer.
    dans la div du milieu, j'ai mis la propriété overflow:scroll; afin que si le contenu reste bien à l'intérieur de la div globale avec des barres de défilement.

    sous IE7, ca fonctionne très bien.
    Sous firefox, le contenu déborde de ma div globale, donc à travers la div "footer" et la div globale.

    voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <div style="width:750px; height:100px; text-align:center;">
    <div>header</div>
    <div style="overflow:scroll;" >
    mon contenu large
    </div>
    <div>footer</div>
    </div>
    donc sous IE, ma div de contenu reste bien contenue avec des barres de défilement pour voir tout le contenu large.
    sosu FF, le contenu large dépasse à travers tout

    merci de votre aide

  2. #2
    Membre éclairé Avatar de c_s_s
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 619
    Points : 747
    Points
    747
    Par défaut
    Bonjour,

    Avec le code que tu donnes, je ne constate pas le problème dont tu parles.

  3. #3
    Membre extrêmement actif Avatar de cortex024
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 301
    Points : 1 119
    Points
    1 119
    Par défaut
    j'ai oublié de coller une partie du code.

    en fait, dans le div overflow, il y a ceci: width:95%; height:95%;

    Car le div général peut être redimensionné (via javascript)
    mes div header et div footer doivent eux garder la même hauteur.
    il faut donc que je dise à mon div central de contenu d'occuper tout l'espace possible - hauteur header - hauteur footer.

    j'avais essayé avec les % mais si il y a une autre solution qui peut en même temps m'éviter de passer par cette méthode qui a des comportements différents suivant les navigateur je suis preneur

  4. #4
    Membre averti Avatar de mouss4rs
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    884
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 884
    Points : 355
    Points
    355
    Par défaut
    Oui c'est vrai que je comprend pas trés bien ca fonctionne avec ton code sous FF.

  5. #5
    Membre éclairé Avatar de c_s_s
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 619
    Points : 747
    Points
    747
    Par défaut
    Tu as une page en ligne pour voir le problème ?
    Là, avec un code incomplet, on ne peut pas t'aider.

  6. #6
    Membre extrêmement actif Avatar de cortex024
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 301
    Points : 1 119
    Points
    1 119
    Par défaut
    Citation Envoyé par c_s_s Voir le message
    Tu as une page en ligne pour voir le problème ?
    Là, avec un code incomplet, on ne peut pas t'aider.
    non et c'est impossible


    par contre, voici pour illustrer ce "dépassement"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <html>
    <head>
    </head>
    <body>
    <div style="width:300px; height:300px; text-align:center; background-color:Gray;">
    <div>header</div>
    <div style="overflow:scroll; width:95%; height:95%">
    mon contenu large<br>
    </div>
    <div>footer</div>
    </div>
    </body>
    </html>
    Ce code sous IE, le Div conteneur continue bien à englober le div overflow, ce qui est logique vu qu'il le contient.
    sous FF, le div contenu dépasse du div conteneur.



    Ce que je veux, c'est juste que mon div overflow occupe le max d'espace. si il y a un moyen dynamique pour que la hauteur de mon div overflow = hauteur div conteneur - hauteur header - hauteur footer je suis partant

  7. #7
    Membre éclairé Avatar de c_s_s
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 619
    Points : 747
    Points
    747
    Par défaut
    Ok.

    Est-ce que le header et le footer ont une hauteur fixe ?

  8. #8
    Membre extrêmement actif Avatar de cortex024
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 301
    Points : 1 119
    Points
    1 119
    Par défaut
    Citation Envoyé par c_s_s Voir le message
    Ok.

    Est-ce que le header et le footer ont une hauteur fixe ?
    oui

    donc si y a un moyen pour que mon height de mon div overflow puisse être: GetHeightParent-35px (hauteur header+hauteur footer) ça me résoudrait mon problème

  9. #9
    Membre éclairé Avatar de c_s_s
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2008
    Messages : 619
    Points : 747
    Points
    747
    Par défaut
    Avec un positionnement absolu tu pourrais t'en sortir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <div id="main">
    	<div id="header">Header</div>
    	<div id="content">		
    		Contenu
    	</div>
    	<div id="footer">Footer</div>
    </div>
    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
    #main {
        width:300px;
        height:400px;
        position:relative;   
    }
    #header, #footer {
        position:absolute;
        width:100%;
    }
    #header {
        height:25px;
    }
    #footer {    
        bottom:0;
        height:30px;    
    }
    #content {
        position:absolute;
        top:25px; /* hauteur du header */
        bottom:30px; /* hauteur du footer */
        width:100%;    
        overflow:auto;
        overflow-x:hidden;
    }
    Bon, là j'ai mis la hauteur u=du bloc #main dans la feuille de style, mais j'ai cru comprendre que tu modifiais cette hauteur en javascript, donc je te laisse le soin de la définir où tu le souhaites.

  10. #10
    Membre extrêmement actif Avatar de cortex024
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 301
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 301
    Points : 1 119
    Points
    1 119
    Par défaut
    merci pour ta réponse.

    ce n'était pas encore tout a fait ça pour mon cas, mais en jouant avec une position absolute et en définissant des marges comme tu as fait (mais SANS définir le width=100%) j'ai réussi à avoir un affichage correct qui ne déborde plus sous différents navigateurs!

    merci

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

Discussions similaires

  1. [CSS 3] div avec border-radius, contenu qui dépasse
    Par Neckara dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 09/09/2013, 14h16
  2. Réponses: 3
    Dernier message: 31/05/2013, 11h07
  3. [Dojo] AJAX/PHP Mettre à jour une div avec un contenu TabContainer
    Par chotana dans le forum Bibliothèques & Frameworks
    Réponses: 7
    Dernier message: 04/09/2012, 13h46
  4. Dans un div avec overflow, avoir seulement la scrollbar verticale
    Par Richard Trigaux dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 26/07/2012, 12h39
  5. div avec texte "marquee" qui apparait en entier au chargement
    Par misterZ dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 21/09/2009, 00h59

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