2011-10-06 6 views
-1

Possible en double:
How to center DIV in DIV?Comment centrer un div?

Cela paraît simple mais n'a pas pu le comprendre:

Comment puis-je centrer une largeur fixe div sur une page?

Par défaut, il va vers la gauche.

halign est obsolète mais je peux trouver un remplacement de boîte.

[mise à jour]

width:800px;left-margin:auto;right-margin:auto: 

fonctionne très bien.

Y at-il un moyen de le faire sans définir une largeur fixe?

+1

[Autant de doublons] (http://stackoverflow.com/search?q=center+div). – Alex

Répondre

2

Essayez ceci:

<style> 
.centered { 
margin-left:auto; 
margin-right:auto; 
} 
</style> 

<div class="centered"> 
Some text 
</div> 
0
div { 
    margin-left: auto; 
    margin-right: auto; 
} 
1
<div style="margin:0 auto">content here</div> 
0

margin:auto; devrait faire l'affaire, je suppose?

0

Tant que vous avez un doctype déclaré, centrer une div sur une page devrait être aussi facile que:

#someDiv { 
    width: 624px; 
    margin-left: auto; 
    margin-right: auto; 
} 

Si vous utilisez Internet Explorer et que vous ne disposez pas d'un doctype déclaré (vous 'fonctionne en mode quirks), cela ne fonctionnera pas. Le correctif consiste à ajouter la déclaration doctype appropriée à votre page. Vous trouverez la déclaration appropriée ici:

W3C QA - Recommended list of Doctype declarations you can use in your Web document

+0

Quel est le doctype approprié? – evan

+0

@evan - Tout dépend du type de document que vous créez. –

1

A div, par défaut, est toute la largeur de la page. Vous pouvez centrer le contenu en réglant le css du div:

.mydiv 
{ 
    text-align: center; 
} 

OU

Vous pouvez centrer le div lui-même en faisant cela:

.mydiv 
{ 
    display: inline-block; /* make it be only as wide as its contents */ 
    margin: auto; /* centering magic by making the margins equal and maximum */ 
} 
0

Il y a généralement deux façons de faire (que j'ai vu). L'un avec l'attribut de marge et une autre avec le positionnement et left:50%

http://jsfiddle.net/NvaEE/

<br> 
<div class="first"> I have a fixe dwidth</div> 
<br> 
<div class="second"> I have a fixe dwidth</div> 

div{width:200px; background:#ddd;} 

div.first{margin:0 auto;} 
div.second{position:absolute;left:50%;margin-left:-100px} 
1

Vous pouvez centrer toute div qui ne couvre pas toute la page. Dites votre div est

.div { 
width: 80%; 
margin: 0 auto; 
} 

Ensuite, il va fonctionner correctement. Comme l'a dit Evan "display: inline-block"; rendra la div aussi large que son contenu qui fonctionnera aussi bien avec "margin: 0 auto;".

0

vous l'envelopper dans un div conteneur qui enjambe la largeur de la page et donnez ce conteneur div l'attribut

text-align: center; 

css.

Il existe d'autres méthodes, telles que la gestion des marges et des largeurs. Pour la plupart des cas, vous pouvez vous débrouiller avec text-align.