相信很多朋友在做页面的时候,都会遇到这个问题,而大多数的解决办法不是利用table,就是利用margin,padding属性来达到这种效果。
这个情况是在老外的网上看到的。
Html代码
<div id="outer"> <div id="middle"> <div id="inner"> any text any height any content, for example generated from DB everything is vertically centered </div> </div> </div>
样式表
#outer {height: 400px; overflow: hidden; position: relative;} #outer[id] {display: table; position: static;} #middle {position: absolute; top: 50%;} /* for explorer only*/ #middle[id] {display: table-cell; vertical-align: middle; position: static;} #inner {position: relative; top: -50%} /* for explorer only */ /* optional: #inner[id] {position: static;} */
原文:http://www.student.oulu.fi/~laurirai/www/css/middle/
blueidea上也有详尽的解析:http://www.blueidea.com/bbs/newsdetail.asp?id=2464346&posts=current