純CSS實現(xiàn)垂直居中的幾種方法

垂直居中是布局中十分常見的效果之一,為實現(xiàn)良好的兼容性,PC端實現(xiàn)垂直居中的方法一般是通過絕對定位序苏,table-cell,負邊距等方法疑故。有了css3杠览,針對移動端的垂直居中就更加多樣化。

方法1:table-cell

<div class="box box1">
        <span>垂直居中</span>
</div>

css:

.box1{
    display: table-cell;
    vertical-align: middle;
    text-align: center;        
}
box1.jpg

方法2:display:flex

.box2{
    display: flex;
    justify-content:center;
    align-items:Center;
}

方法3:絕對定位和負邊距

.box3{position:relative;}
.box3 span{
            position: absolute;
            width:100px;
            height: 50px;
            top:50%;
            left:50%;
            margin-left:-50px;
            margin-top:-25px;
            text-align: center;
        }

方法4:絕對定位和0

.box4 span{
  width: 50%; 
  height: 50%; 
  background: #000;
  overflow: auto; 
  margin: auto; 
  position: absolute; 
  top: 0; left: 0; bottom: 0; right: 0; 
}

這種方法跟上面的有些類似纵势,但是這里是通過margin:auto和top,left,right,bottom都設置為0實現(xiàn)居中踱阿,很神奇吧管钳。不過這里得確定內(nèi)部元素的高度,可以用百分比软舌,比較適合移動端才漆。

方法5:translate

.box6 span{
            position: absolute;
            top:50%;
            left:50%;
            width:100%;
            transform:translate(-50%,-50%);
            text-align: center;
        }

這實際上是方法3的變形,移位是通過translate來實現(xiàn)的佛点。

方法6:display:inline-block

.box7{
  text-align:center;
  font-size:0;
}
.box7 span{
  vertical-align:middle;
  display:inline-block;
  font-size:16px;
}
.box7:after{
  content:'';
  width:0;
  height:100%;
  display:inline-block;
  vertical-align:middle;
}

這種方法確實巧妙...通過:after來占位醇滥。

方法7:display:flex和margin:auto

.box8{
    display: flex;
    text-align: center;
}
.box8 span{margin: auto;}

方法8:display:-webkit-box

.box9{
    display: -webkit-box;
    -webkit-box-pack:center;
    -webkit-box-align:center;
    -webkit-box-orient: vertical;
    text-align: center
}

css3博大精深,可以實現(xiàn)很多創(chuàng)造性的效果超营,需要好好研究下鸳玩。

方法9:display:-webkit-box

這種方法,在 content 元素外插入一個 div演闭。設置此 div height:50%; margin-bottom:-contentheight;不跟。

content 清除浮動,并顯示在中間米碰。

<div class="floater"></div>  
<div class="content"> Content here </div>  

.floater {
    float:left; 
    height:50%; 
    margin-bottom:-120px;
}
.content {
    clear:both; 
    height:240px; 
    position:relative;
}

優(yōu)點:
適用于所有瀏覽器
沒有足夠空間時(例如:窗口縮小) content 不會被截斷窝革,滾動條出現(xiàn)
缺點:
唯一我能想到的就是需要額外的空元素了

用心寫代碼,不辜負程序員之名吕座。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末虐译,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子吴趴,更是在濱河造成了極大的恐慌漆诽,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件锣枝,死亡現(xiàn)場離奇詭異拴泌,居然都是意外死亡,警方通過查閱死者的電腦和手機惊橱,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來箭昵,“玉大人税朴,你說我怎么就攤上這事〖抑疲” “怎么了正林?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長颤殴。 經(jīng)常有香客問我觅廓,道長,這世上最難降的妖魔是什么涵但? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任杈绸,我火速辦了婚禮帖蔓,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘瞳脓。我一直安慰自己塑娇,他們只是感情好,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布劫侧。 她就那樣靜靜地躺著埋酬,像睡著了一般。 火紅的嫁衣襯著肌膚如雪烧栋。 梳的紋絲不亂的頭發(fā)上写妥,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天,我揣著相機與錄音审姓,去河邊找鬼珍特。 笑死,一個胖子當著我的面吹牛邑跪,可吹牛的內(nèi)容都是我干的次坡。 我是一名探鬼主播,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼画畅,長吁一口氣:“原來是場噩夢啊……” “哼砸琅!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起轴踱,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤症脂,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后淫僻,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體诱篷,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年雳灵,在試婚紗的時候發(fā)現(xiàn)自己被綠了棕所。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡悯辙,死狀恐怖琳省,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情躲撰,我是刑警寧澤针贬,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布,位于F島的核電站拢蛋,受9級特大地震影響桦他,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜谆棱,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一快压、第九天 我趴在偏房一處隱蔽的房頂上張望圆仔。 院中可真熱鬧,春花似錦嗓节、人聲如沸荧缘。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽截粗。三九已至,卻和暖如春鸵隧,著一層夾襖步出監(jiān)牢的瞬間绸罗,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工豆瘫, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留珊蟀,地道東北人。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓外驱,卻偏偏與公主長得像育灸,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子昵宇,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354