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 :

Un margin:auto qui sort de sa boîte


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut Un margin:auto qui sort de sa boîte
    Hello,

    J'ai un petit problème avec un margin:auto. Pour une mise en situation, voici mon code :

    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
    <head>
      <title>Mon titre</title>
      <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    </head>
    <body>
     
    <div id="main">
     
      <div id="col_log">LOG</div>
     
      <div id="col_info">
        <div id="how_work">HOW</div>
      </div>
     
    </div>
     
    </body>
    </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
    15
    16
    #main {
        width : 800px;
        margin : 0 auto;
        background : red;
    }
    #col_log {
        float : right;
        background : green;
        width : 250px;
    }
    #how_work {
        margin : 0 auto;
        width : 500px;
        background : blue;
        overflow : hidden;
    }
    Je souhaite donc avoir une colonne à droite (ici en float:right) et le contenu à gauche qui prend le reste de la place disponible.

    Si je mets un élément en margin:auto dans le contenu de gauche, il va se centrer par rapport à la largeur du conteneur sans se soucier de la colonne de droite (le overflow:hidden ici ne sert qu'à faire passer le div how_work devant la colonne de droite pour montrer qu'ils se chevauchent bien).

    Je ne peux pas mettre mon contenu en float:left ainsi que la conne de droite également pour des raisons techniques.

    Ma question est donc : Comment faire pour centrer un élément block dans mon col_info sans qu'il se centre par rapport au div main ?


  2. #2
    Membre Expert Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Par défaut
    Salut,
    je comprends pas ce qui est en gras :
    (le overflow:hidden ici ne sert qu'à faire passer le div how_work devant la colonne de droite pour montrer qu'ils se chevauchent bien).
    C'est pourtant la solution non?

  3. #3
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Non non. Si tu enlèves l'overflow:hidden, les deux blocs se chevauchent quand même, sauf que c'est le bloc de droite qui passe au-dessus, donc on peut moins se rendre compte du problème.

    J'ai donc mis un overflow:hidden sur le bloc how_work pour que ce soit lui qui passe au-dessus et qu'on se rende mieux compte qu'il est centré dans le div main et non dans le div col_info.

  4. #4
    Membre Expert Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Par défaut
    Bisunurs la largeur de main et de col info est la même (sur Firefox 3 beta et IE7)
    et le div how_work n'est ni centré par rapport à main ni par rapport à col info.

    EDIT Ah ok Bisunurs en effet Safari se comporte différemment à ce niveau là.

  5. #5
    Membre Expert Avatar de Erwan31
    Profil pro
    Inscrit en
    Février 2008
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 2 177
    Par défaut
    Si tu mets l'overflow directement sur col_info ça fonctionne. Est ce que cette situation te convient?

  6. #6
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Citation Envoyé par Erwan31 Voir le message
    EDIT Ah ok Bisunurs en effet Safari se comporte différemment à ce niveau là.
    Bizarre, c'était ce comportement que j'avais sur Firefox2 et IE7 aussi, pas que sur Safari.

    Citation Envoyé par Erwan31 Voir le message
    Si tu mets l'overflow directement sur col_info ça fonctionne. Est ce que cette situation te convient?
    Il me semblait avoir essayé cette solution, mais apparemment non, et elle fonctionne impeccablement, merci !

    Je suis tout de même surpris par ce comportement sans l'overflow ...

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 46
    Par défaut
    J'ai été trop lent ! dommage mais je le propose quand meme :

    moi j'avais ca comme solution en plus de ton code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #col_info {
    	position: absolute;
    	width: 550px;
    }

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

Discussions similaires

  1. Valeur negative qui sort des tenebres ?
    Par Battosaiii dans le forum C
    Réponses: 9
    Dernier message: 14/03/2006, 16h11
  2. Numéro Auto qui se réinitialise à 1 tous les jours!
    Par R0cKW|LDeR dans le forum Access
    Réponses: 11
    Dernier message: 02/02/2006, 22h05
  3. [MP] Messages qui restent dans la boîte d'envoi ?
    Par elitost dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 6
    Dernier message: 18/11/2005, 22h56
  4. margin-auto qui ne marchas sous IE
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 21/10/2005, 20h13

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