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] Problème de marges


Sujet :

CSS

  1. #1
    Membre confirmé
    Homme Profil pro
    Fondateur
    Inscrit en
    Octobre 2002
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Fondateur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 445
    Points : 504
    Points
    504
    Par défaut [CSS] Problème de marges
    Bonjour,

    J'ai fait la mise en page suivante :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
     
    <head>
    <title>Titre a definir</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <link rel="stylesheet" media="screen" type="text/css" title="Classic" href="style1.css" />
    </head>
     
    <body>
     
    	<div id="principal">
     
    		<div id="header">
    		</div>
     
    		<div id="menu">
     
    			<ul>
    				<a href="">Menu1</a>
    				<a href="">Menu2</a>
    				<a href="">Menu 3</a>
    				<a href="">Menu 4</a>
    				<a href="">Menu 5</a>
    			</ul>
     
    		</div>
     
    			<div id="gauche">
     
    				<div id="gauche_menu1">
    					<h4>Infos</h4>
    					<ul>
    						<li> - Info 1 </li>
    						<li> - Info 2 </li>
    					</ul>
    				</div>
     
    				<div id="gauche_menu2">
    					<h4>Articles</h4>
    					<ul>
    						<li> - Article 1 </li>
    						<li> - Article 2 </li>
    					</ul>
    				</div>
     
    			</div>
     
    			<div id="droite">
     
    				<div id="droite_edito">
    					<h4>Droite</h4>Msg droite
    				</div>
     
    			</div>
     
    			<div id="corps">Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />Texte du corps<br />suite<br />suite<br />aaa<br />
    			</div>
     
     
    		<div id="footer">
    		</div>
     
    	</div>
     
    </body>
     
    </html>

    Et voici le CSS de cette page :

    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
     
    body
    {
    	background-image : url("./fond.png");
    }
     
    #principal
    {
    	position : absolute;
    	width : 750px;
    	left : 50%;
    	margin-left : -375px;
    	margin-top : 20px;
    	margin-bottom : 20px;
    	background-color : #eeeeee;
    }
     
    #menu
    {
    	text-align : center;
    }
     
    #menu a
    {
    	margin-left : 15px;
    }
     
    #corps
    {
    	margin-left: 150px;
    	margin-right: 150px;	
    }
     
    #gauche
    {
    	position: absolute;
    	left:0;
    	width: 150px;
    }
     
    #gauche ul
    {
    	list-style : none;
    	padding : 0;
    }
     
    #droite
    {
    	position: absolute;
    	right:0;
    	width: 150px;
    }
    Cette page est visible ici : http://www.webmaitrise.com/sylsau/test1.htm

    Voici mon problème :
    Dans le div principal, je mets un margin-bottom de 20px, et en bas de la page il n'y a pas de décalage de 20px qui apparait pour séparer le div principal du bas de la page.

    Je ne comprends pas trop pourquoi le décalage ne se fait pas.
    Est-ce que quelqu'un pourrait me dire comment je pourrais créer ce décalage ?

    Merci d'avance de votre aide.

    Sylvain.

  2. #2
    Membre confirmé
    Homme Profil pro
    Fondateur
    Inscrit en
    Octobre 2002
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Fondateur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 445
    Points : 504
    Points
    504
    Par défaut
    personne n'a d'idées ?

  3. #3
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    Salut, ça ne serait pas padding-bottom plutôt que margin-bottom :

  4. #4
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    273
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 273
    Points : 322
    Points
    322
    Par défaut
    normalement un margin-bottom devrait marcher...
    Le choix entre margin et padding dépend de où tu veut placer la limite (si l'espace libre doit etre inclu ou non)

    essai plutot un padding sur le body dans ce cas.
    Sinon j'ai noté quelques détails...
    - Tu n'as pas mis de <li></li> dans le <ul></ul> de ton menu.
    - beaucoup de position "absolute".. quel intéret?
    (pour centrer horizontalement, il suffit de spécifier la width et de mettre margin:auto.

    edit je viens de comprendre ton utilisation des position absolute.
    Si c'est pour mettre en ligne horizontalement tes 3 colonnes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    #gauche, #centre{
    float:left;
    }
    #droite{
    float:right;
    }

  5. #5
    Membre actif
    Avatar de nicolas.pied
    Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Janvier 2005
    Messages
    249
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes

    Informations forums :
    Inscription : Janvier 2005
    Messages : 249
    Points : 235
    Points
    235
    Par défaut
    Deux solutions trouvées :

    La 1ere

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #principal {
       //position : absolute;
       width : 750px;
       left : 50%;
       margin-left : -375px;
       margin-top : 20px;
       margin-bottom : 20px;
       background-color : #eeaeee;
    }
    Mais la toute la structure de la page est modifiée. La balise position:absolute ne doit pas être très compatible avec le margin-bottom.

    La 2nd

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    #footer {
    	background-color : #ffffff;
    	height: 20px;
    }
    Voilou voilou.

    Pour rappel padding = intérieur et margin = extérieur

Discussions similaires

  1. Débutant Idiot ? : Problème de marge css
    Par Bengo dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 14/07/2010, 20h52
  2. [Article] Résoudre les problèmes de marges en CSS
    Par Bovino dans le forum Publications (X)HTML et CSS
    Réponses: 0
    Dernier message: 29/06/2010, 20h06
  3. [CSS] Problème de marge dans des listes.
    Par Istrella dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 13/09/2006, 10h16
  4. [CSS]Problème de centrage par marges négatives
    Par Oluha dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 08/08/2006, 16h01
  5. [CSS] Problème de marge Avec IE
    Par Le_Tolier dans le forum Mise en page CSS
    Réponses: 5
    Dernier message: 26/09/2005, 11h12

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