2012-05-30 99 views
1

所以我需要创建3或4个正方形居中的布局。就像现在很多不同的屏幕(我目前有21个philips,macbook 13和ipad),并且所有的屏幕都是不同的。水平居中div中的元素

PAGE

所以我需要它在任何屏幕居中。这里是一些我的代码:

一些CSS:

#main{ 
border: 1px solid red; 
margin: auto; 
} 
#block{ 
display: inline-block; 
padding: 110px; 
border: 1px solid red; 
margin: 10px 10px; 
overflow:hidden; 
} 

一些HTML:

<div id="wrapper"> 
<div id="header"> 
header 
</div> 
<div id="main"> 
<div id="block">main</div> 
<div id="block">main</div> 
<div id="block">main</div> 
<div id="block">main</div> 
<div id="block">main</div> 
<div id="block">main</div> 
<div style="clear:both"></div> 
</div> 
</div> 

我尝试不同的方式与一些额外的div ... http://dl.dropbox.com/u/14396564/screens/Title%20%2820120530%29.png http://dl.dropbox.com/u/14396564/screens/Title%20%2820120530%292.png http://dl.dropbox.com/u/14396564/screens/Title%20%2820120530%29_new.png

所以我需要这个广场会自动集中在任何s creens

+0

多个元素共享相同的'id'让你的HTML无效。改用'class';在文档中'id' ***必须是唯一的。 –

回答

5

由于您只是使用inline-block,因此您可以居中放置容器的文本。

另外,使用非唯一元素的类。

小提琴:http://jsfiddle.net/LWTNB/3/

更新HTML:

<div id="wrapper"> 
    <div id="header"> 
     header 
    </div> 
    <div id="main"> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
     <div class="block">main</div> 
    </div> 
</div> 

更新CSS:

#main{ 
    border:1px solid red; 
    text-align:center; /* solution */ 
} 

.block{ 
    display:inline-block; 
    padding:110px; 
    border:1px solid red; 
    margin:10px 10px; 
    overflow:hidden; 
} 
+1

废话,做了小提琴的例子,这里是你的答案,+'这个! ps:删除'

',那里没用,并删除'margin:auto;',也没用! – Zuul

+0

优秀点。两者均通过编辑处理。 – MetalFrog