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 :

Décallage entre 2 blocs [CSS 2]


Sujet :

CSS

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 310
    Par défaut Décallage entre 2 blocs
    Bonjour

    J'ai une page avec 3 colonnes avec :
    - un premier menu à gauche
    - un second menu tout à droite
    - et enfin une partie contenu qui se situe entre les deux menus.

    J'utilise donc une mise en page à l'aide de div.

    Normalement je suis censé avoir un écart de 15 pixels entre mon menu qui se situe à gauche et ma partie du milieu et 15 pixels entre mon menu qui se situe à droite et ma partie du milieu.
    Or la j'ai un écart de 15 pixels et de 16 pixels sur la droite

    Je comprends pas d'ou vient ce pixel supplémentaire, une idée?
    Merci d'avance

    PS : Mon code se situe en pièce jointe.
    Fichiers attachés Fichiers attachés

  2. #2
    FoxLeRenard
    Invité(e)
    Par défaut
    Bonjour,
    en rajoutant le BODY absent, je n'ais aucune erreur de type nbrde pixels,
    j'ais mesuré la page pour control

  3. #3
    Membre éclairé

    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 310
    Par défaut
    Bonjour
    Merci d'avoir essayé. C'est vrai que j'avais oublié le body de la page
    Mais par contre avec ou sans, j'ai toujours ce pixel en trop avec Firefox 3.5



    Les deux traits oranges ont la même taille, le 2e trait orange est censé toucher la bordure de l'autre bloc

    Sous quel navigateur avais tu testé?

  4. #4
    FoxLeRenard
    Invité(e)
    Par défaut
    Citation Envoyé par Hell Voir le message
    Bonjour
    Sous quel navigateur avais tu testé?
    par exemple IE7

  5. #5
    Membre confirmé
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2008
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Avril 2008
    Messages : 22
    Par défaut
    Bonjour,

    J'ai jeté un coup d'oeuil sur ton code CSS. Il ne faut pas donner de grands margin ou padding car ça donne pas le même résultat dans les navigateurs.

    Pour centrer ton bloc du milieu tu peux faire comme suit: (L'ordre des div de gauche à droite)
    - 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
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    <div class="page">
    	<div class="menu1">	
    		<ul class="tableau_menuv2">
    		<li><a href="">Menu</a></li>
    		<li>- <a href="">Lien1</a></li>
    		<li>- <a href="">Lien2</a></li>
    		<li>- <a href="">Lien3</a></li>
    		<li>- <a href="">Lien4</a></li>
    		</ul>
    	</div>
    <div class="pagemilieu"> 
       <div id ="contenu">
    	blabla
       </div>
    </div>
    <div class="menu2">	
    		<ul class="tableau_menuv2">
    		<li><a href="">Menu</a></li>
    		<li>- <a href="">Lien1</a></li>
    		<li>- <a href="">Lien2</a></li>
    		<li>- <a href="">Lien3</a></li>
    		<li>- <a href="">Lien4</a></li>
    		</ul>
    	</div>
    - 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
    .menu1 {	
    	width: 211px;
    	border: 0px solid green;
    	float: left;
    }
    
    .menu2 {	
    	width: 211px;
    	border: 0px solid green;
    	float: left;	
    }
    
    .pagemilieu {	
            float: left;	
    }
    #contenu {
          margin: 0 auto; /* Pour centrer le bloc contenu dans le bloc page milieu*/
          background-color:white;
          border: 0px solid red;
    }

  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
    Bonsoir,

    Dans ton code, il serait préférable de conférer à .pagemilieu un nouveau contexte de formatage block via overflow:hidden afin de déterminer sa position par rapport aux deux flottants.

    Code css : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    .pagemilieu {	
        /* margin-left: 226px; */
        /* margin-right: 226px;  */	
        overflow:hidden;
        background-color:white;
        border: 0px solid red;
    }

    Sous IE6, les 3px Gap apparaissent => la solution dans ce topic.


    Citation Envoyé par emie7 Voir le message
    Il ne faut pas donner de grands margin ou padding car ça donne pas le même résultat dans les navigateurs.
    Exceptés IE6/IE7/Opéra7 avec leur modèle de boite de Microsoft en mode Quirks, IE6 avec ses 3px Gap et la double marge, les navigateurs interprètent margin et padding de la même manière.

  7. #7
    Membre éclairé

    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 310
    Par défaut
    Merci beaucoup emie7, je savais pas que ça pouvait causer ce genre de problème.

    Ca fonctionne mais la mise en page ne correspond plus à ce que je souhaitais avoir, à savoir deux menus de 211px, une partie "contenu" utilisant l'espace restant et avec une séparation de 15 pixels entre mon bloc du milieu et mes menus

    Edit : je viens de voir ton message Macmillenium, merci
    Je viens d'essayer, malheureusement j'ai toujours mon pixel en trop dans la séparation entre la partie "contenu" et le menu situé à droite

  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 : 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
    • Attribue un overflow:hidden à .page pour englober ses enfants flottants;
    • Transfère les boder:1px solid black que tu as sur .tableau_menuv2 vers .menu1 et .menu2 et supprime les border:0 solid green;;
    • Rajoute un padding:0 15px sur .pagemilieu et supprime les margin-left:15px et margin-right:15px.

  9. #9
    Membre éclairé

    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    310
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 310
    Par défaut
    Merci beaucoup, ça marche

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

Discussions similaires

  1. espace vertical entre deux blocs
    Par adr22 dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 12/06/2009, 17h40
  2. Décallage entre div
    Par xxkirastarothxx dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 15/09/2008, 09h40
  3. Problème de liste instantanée + passage entre les bloc
    Par dally_01 dans le forum Designer
    Réponses: 3
    Dernier message: 20/04/2008, 01h57
  4. Définir des relations entre des blocs de données
    Par jeunot0108 dans le forum Forms
    Réponses: 7
    Dernier message: 18/07/2007, 14h56
  5. probleme d'espace non voulu entre 2 bloc
    Par piff62 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 12/04/2005, 16h07

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