885 votes

Comment aligner un <div> au milieu de la page

J'ai une balise div dont la largeur est fixée à 800px. Lorsque la largeur du navigateur est supérieure à 800px, la balise div ne doit pas être étirée, mais elle doit être placée au milieu de la page.

1170voto

AgileJon Points 20497
<body>
    <div style="width:800px; margin:0 auto;">
        centered content
    </div>
</body>

330voto

Summo Points 839

Position absolute, puis top:50% et left:50% placent le bord supérieur au centre vertical de l'écran, et le bord gauche au centre horizontal. Ensuite, en ajoutant margin-top au négatif de la hauteur de la division, c'est-à-dire -100, on la décale de 100 au-dessus, de même pour margin-left. Ainsi, la division se trouve exactement au centre de la page.

<div id="outPopUp"></div>

#outPopUp{
     position:absolute;
     width:300px;
     height:200px;
     z-index:15;
     top:50%;
     left:50%;
     margin:-100px 0 0 -150px;
     background:red;
}

65voto

Tomas Lycken Points 23432
  1. Voulez-vous dire que vous voulez le centrer verticalement ou horizontalement ? Vous avez dit que vous avez spécifié le height à 800px, et je voulais que le div ne s'étire pas lorsque le width était plus grande que ça...

  2. Pour un centrage horizontal, vous pouvez utiliser la fonction margin: auto; en css. Vous devrez également vous assurer que l'attribut body et html n'ont pas de marge ni de padding :

    html, body { margin: 0; padding: 0; }
    #centeredDiv { margin-right: auto; margin-left: auto; width: 800px; }

39voto

Kevin D. Points 987

Pour qu'il fonctionne aussi correctement dans Internet Explorer 6, vous devez procéder comme suit :

HTML

<body>
    <div class="centered">
        centered content
    </div>
</body>

CSS

body {
    margin: 0;
    padding: 0;
    text-align: center; /* !!! */
}

.centered {
    margin: 0 auto;
    text-align: left;
    width: 800px;
}

30voto

RJK Points 1661

Vous pouvez aussi utiliser comme ceci

<div style="width: 60%; margin: 0px auto;">
         Your Contents Here...
</div>

J'espère que cela pourra être utile à quelqu'un,

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X