如何實現(xiàn)未知高居垂直居中?_Div+CSS教程
教程Tag:暫無Tag,歡迎添加,賺取U幣!
盡管我們知道CSS的vertical-align特性,但是并不能有效解決未知高度的垂直居中問題(在一個div容器里有未知高度的文本或圖片的情況下)。
標(biāo)準(zhǔn)瀏覽器如Mozilla,Opera等,可將父級元素顯示方式設(shè)定為TABLE(display: table;) ,內(nèi)部子元素定為table-cell (display: table-cell),通過vertical-align特性使其垂直居中,但非標(biāo)準(zhǔn)瀏覽器是不支持的。依然解決不了未知高居垂直居中。
非標(biāo)準(zhǔn)瀏覽器只能在子元素里設(shè)距頂部50%,里面再套一個容器元素距頂部-50% 來抵消。最終實現(xiàn)未知高居垂直居中的設(shè)置。
看下面的CSS代碼:
示例代碼 [www.zhaotila.cn]
body {padding: 0; margin: 0;}
body,html{height: 100%;}
#outer {height: 100%; overflow: hidden; position: relative;width: 100%; background:ivory;}
#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%;width: 400px;margin: 0 auto;} /* for explorer only */
div.greenBorder {border: 1px solid green; background-color: ivory;}
body,html{height: 100%;}
#outer {height: 100%; overflow: hidden; position: relative;width: 100%; background:ivory;}
#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%;width: 400px;margin: 0 auto;} /* for explorer only */
div.greenBorder {border: 1px solid green; background-color: ivory;}
下面是XHTML代碼:
示例代碼 [www.zhaotila.cn]
<div id="outer">
<div id="middle">
<div id="inner" class="greenBorder">
</div>
</div>
</div>
<div id="middle">
<div id="inner" class="greenBorder">
</div>
</div>
</div>
我們來看看最終(未知高居垂直居中)效果的實例演示:
代碼調(diào)試框 [www.zhaotila.cn]
[ 可先修改部分代碼 再運行查看效果 ]
相關(guān)Div+CSS教程:
- DIV+CSS設(shè)計的誤區(qū)
- CSS基礎(chǔ):常用CSS英文字體介紹
- IE6和IE7中border邊框斷線現(xiàn)象
- border:none;與border:0;的有什么不同?
- div+css下js對聯(lián)廣告不隨屏幕滾動的解決方法
- HTML元素的ID和Name屬性的區(qū)別
- divcss教程:深入了解css的行高Line Height屬性
- CSS文檔流,塊級元素和內(nèi)聯(lián)元素
- 5個你該知道的CSS3新技術(shù)
- 用正則表達(dá)式替換a標(biāo)記href值
- 30個優(yōu)秀的CSS導(dǎo)航和按鈕設(shè)計教程
- css中px和em有什么區(qū)別
- 相關(guān)鏈接:
- 教程說明:
Div+CSS教程-如何實現(xiàn)未知高居垂直居中?
。