2011-06-22 4 views
4

donné un contenant avec des objets à l'intérieur comme ceci:comment centrer les éléments dynamiquement dans un div

<div id="container"> 

    <div class="item">Item</div> 
    <div class="item">Item</div> 
    <div class="item">Item</div> 
    <div class="item">Item</div> 
    <div class="item">Item</div> 
    <div class="item">Item</div> 
    <div class="item">Item</div> 
    <div class="item">Item</div> 

</div> 
#container { 
    width: 600px; 
    border: 1px solid #CCC; 
} 

#container .item { 
    background: red; 
    display:inline-block; 
    width: 50px; 
    height: 50px; 
} 

http://jsfiddle.net/zrhLt/

Est-il possible avec CSS (pas JS) à centrer automatiquement les articles avec des marges égales. Sans avoir à utiliser une table?

Merci

+2

S'il vous plaît en ligne poster code afin que à l'avenir, la question reste valable et visible pour tout le monde sur le web. –

+0

Mais aussi laisser le violon, plus facile de répondre :) – SinistraD

+0

désolé, c'est beaucoup de travail :) serait bien si les deux jouaient bien ensemble. – AnApprentice

Répondre

4

Ajout text-align:center; aux centres de conteneurs affiche tous les éléments.

Vous ne voulez pas utiliser une table, mais vous pouvez toujours dire au navigateur pour le rendre comme une table :-) Alors que diriez-vous CSS:

#container { 
    width: 600px; 
    border: 1px solid #CCC; 
    display: table; 
    border-spacing:20px 0; /* this is the value that controls the margin */ 
} 

#container .item { 
    background: red; 
    display: table-cell; 
    width: 50px; 
    height: 50px; 
} 
+0

qui ne le fait pas car la marge ne sera pas correcte. S'il vous plaît poster un violon si je comprends mal. Merci – AnApprentice

+0

Oui, j'ai mal compris la question. J'ai modifié ma réponse. – andyb

+0

-1 -> +1 pour la réponse épique – SinistraD

1

Vous pouvez jouer avec le marges comme celle-ci:

#container { 
    width: 600px; 
    border: 1px solid #CCC; 

} 

#container .item { 
    background: red; 
    display:inline-block; 
    width: 50px; 
    height: 50px; 
    margin-left: 1.4%; 
    margin-right: 1.4%; 
} 

Jouer un Fiddle: http://jsfiddle.net/zrhLt/9/