網(wǎng)頁布局 CSS簡單實現(xiàn)垂直居中
互聯(lián)網(wǎng) 發(fā)布時間:2008-10-17 19:25:41 作者:佚名
我要評論

英文原文:
http://www.search-this.com/2008/05/15/easy-vertical-centering-with-css/
中文譯文:
http://www.12sui.cn/blog/71.html
本人英語還沒過四級,所以不能說是翻譯把,只能說是按照自己的理解去敘述了一遍作者的意思,請各位多多指教。
譯文內(nèi)容:
英文原文:
http://www.search-this.com/2008/05/15/easy-vertical-centering-with-css/
中文譯文:
http://www.12sui.cn/blog/71.html
本人英語還沒過四級,所以不能說是翻譯把,只能說是按照自己的理解去敘述了一遍作者的意思,請各位多多指教。
譯文內(nèi)容:
當(dāng)你發(fā)覺你曾經(jīng)以為的事實其實并不是那樣,你會感覺很開心。
舊的方法
經(jīng)常做的第一件事通常是如何在 CSS 中控制元素水平或者垂直方向上居中,相信這也是很多設(shè)計師喜歡做的事情。首先,我們采用絕對定位的方法讓元素離開頂部和左部 50% 的距離,然后我們需要設(shè)置一個負的 margin 來將元素拉回到中間的位置。
現(xiàn)在讓我們來看一下這種方法的代碼以及它所帶來的問題:
CSS 代碼:
html,body{
height:100%;
margin:0;
padding:0;
}
body{
background:#eae7d7 url(images/vert-centre.jpg) repeat-x center center;
text-align:center;
min-width:626px;
min-height:400px;
}
#vert-hoz{
position:absolute;
top:50%;
left:50%;
margin-top:-198px;/* half elements height*/
margin-left:-313px;/* half elements width*/
width:624px;
height:394px;
border:1px solid silver;
background:#666;
overflow:auto;/* allow content to scroll inside element */
text-align:left;
}
h1 {color:#fff;margin:0;padding:0}
HTML 代碼:
<div id="vert-hoz">
<h1>Content goes here</h1>
</div>
你可以在 這里 看到這段代碼的展示。

我為它設(shè)置了一個背景圖片,僅僅是為了讓它看起來更舒服一些,而我們真正需要注意的部分是中間那部分灰色的區(qū)域。
如你看到的那樣,現(xiàn)在的結(jié)果正如我們想象的那樣,那部分元素在水平和垂直的方向上完美的處在了中間的位置。這是按照我們最初提起的那種方式實現(xiàn)的,首先讓元素在水平和垂直方向上離開 50% 的距離,然后設(shè)置負的 margin 讓它回到中間的位置。
盡管表面上看來,現(xiàn)在的方法已經(jīng)有效的達到了我們預(yù)期的目標(biāo),但是,同時也產(chǎn)生了嚴(yán)重的負面影響。當(dāng)一個人將瀏覽器窗口變小,或者使用一個低分辨率的電腦時,那么居中的那部分元素的上部和左部將消失,即使通過滾輪的滑動,也無法看到。
當(dāng)我們將窗口變小,就會看到如下圖那樣的情況:

文字的頂部和左部已經(jīng)消失,而且,隨著我們?yōu)g覽器窗口的不斷縮小,這段文字將最終離開我們的視線。為了彌補這些負的數(shù)值,我們?yōu)?body 設(shè)置了 min-width 和 min-height,但是你可以看到,這根本沒有起到任何效果,那段文字依然停留在我們視線以外的地方。
相關(guān)文章
- 這篇文章主要介紹了CSS實現(xiàn)子元素div水平垂直居中的示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起2020-09-03
- 這篇文章主要介紹了css常用元素水平垂直居中方案,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)2019-08-09
css實現(xiàn)元素垂直居中的常用方法(總結(jié))
本文給大家分享幾種方法介紹css實現(xiàn)元素垂直居中的常用方法,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-01- 作為前端攻城師,在制作Web頁面時都有碰到CSS制作水平垂直居中,我想大家都有研究過或者寫過,特別的其中的垂直居中,更是讓人煩惱,下面這篇文章主要給大家匯總介紹了關(guān)于2017-09-12
css實現(xiàn)元素水平垂直居中常見的兩種方式實例詳解
這篇文章主要給大家介紹了css實現(xiàn)元素水平垂直居中的兩種方式,文中給出了完整的示例代碼供大家參考學(xué)習(xí),對大家的學(xué)習(xí)或者工作具有一定的參考價值,有需要的朋友們下面來2017-04-23- 對于頁面上的塊級元素,只須定寬及設(shè)置margin:auto 0;即可在垂直上居中,但對于浮動的元素垂直居中是無效的。那么我們?nèi)绾蝸硖幚磉@個問題呢,今天我們來探討下。2014-09-12
css3設(shè)置box-pack和box-align讓div里面的元素垂直居中
只要設(shè)置元素的box-pack和box-align即可,這兩個屬性當(dāng)前只有webkit和moz支持,要設(shè)置垂直居中的話只需要將這兩個屬性的值都設(shè)置為center即可,需要的朋友可以參考下2014-09-01html元素水平居中、垂直居中、水平垂直居中于其父級元素的方法
這篇文章主要介紹了html元素 水平居中、垂直居中、水平垂直居中于其父級元素的方法,需要的朋友可以參考下2014-04-08- 這篇文章主要介紹了css實現(xiàn)元素垂直居中顯示的7種方式,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)2020-09-04