未知寬高div垂直水平居中的幾種方法

工作中我們經(jīng)常遇到需要把一個(gè)標(biāo)簽米同,在一個(gè)容器中垂直水平居中陷嘴,但是我們又可能不確定這個(gè)標(biāo)簽的寬高映砖,或者是不固定寬高,那怎么做呢罩旋?

網(wǎng)上很多都是標(biāo)簽內(nèi)放文字啊央,幾行幾行來(lái)做眶诈,針對(duì)不同行數(shù)做不同方法。今天我就說(shuō)說(shuō)一個(gè)標(biāo)簽整體來(lái)垂直水平居中吧瓜饥,面試也會(huì)經(jīng)常遇到這種問(wèn)題逝撬。

首先說(shuō)說(shuō)已知寬高的方法,用處也非常多乓土,比如布局的時(shí)候宪潮,要絕對(duì)居中,或者是做banner圖的時(shí)候趣苏,也需要用到狡相,不可能做一個(gè)放大縮小后整體在左,或者是在右吧食磕,還有就是網(wǎng)站經(jīng)常有那種一排標(biāo)簽尽棕,中間有一張圖片,而且每張圖片大小寬高都不同彬伦,所有你不可能每一張單獨(dú)寫(xiě)樣式吧滔悉,所以用處非常多。

先說(shuō)說(shuō):已知寬高的我就說(shuō)一種吧单绑。利用定位回官,絕對(duì)居中。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>李鵬-前端開(kāi)發(fā)</title>
</head>
<style>
.box{
    width: 800px;
    height:800px;
    border:1px solid #000;
    position:relative;
}
.box .cen{
    width: 200px;
    height: 200px;
    background: #0ff;
    position:absolute;
    left:50%;
    top:50%;
    margin-left: -100px;
    margin-top:-100px;
}
</style>
<body>
    <div class="box">
        <div class="cen"></div>
    </div>
</body>
</html>

下面我就先說(shuō)說(shuō)未知寬高圖片的垂直水平居中方法吧:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>李鵬-前端開(kāi)發(fā)</title>
</head>
<style>
.box{
    width: 800px;
    height:800px;
    border:1px solid #000;
    display:table-cell;
    text-align:center;
    vertical-align: middle;
}
.box img{
    vertical-align: middle;
}
</style>
<body>
    <div class="box">
        ![](images/1.jpg)
    </div>
</body>
</html>

那么搂橙,下面進(jìn)入正題歉提,說(shuō)說(shuō)未知寬高的方法吧。

方法一:利用定位+margin:auto

優(yōu)點(diǎn):這個(gè)方法目前我是絕對(duì)非常棒区转。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>李鵬-前端開(kāi)發(fā)</title>
    <style>
        .box{
            width: 800px;
            height: 800px;
            border:1px solid #000;
            position:relative;
        }
        .cen{
            width: 200px;
            height: 200px;
            background: #0ff;
            position:absolute;
            left:0;
            top:0;
            bottom:0;
            right:0;
            margin:auto;
        }
    </style>  
</head>
<body>
    <div class="box">
        <div class="cen"></div>
    </div>
</body>
</html>
方法二:利用display:table-cell

缺點(diǎn):IE6 7 是不支持display:inline-block

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>李鵬-前端開(kāi)發(fā)</title>
    <style>
        .box{
            width: 800px;
            height: 800px;
            border:1px solid #000;
            display:table-cell;
            vertical-align: middle;
            text-align:center;
        }
        .cen{
            width: 200px;
            height: 200px;
            background: #0ff;
            vertical-align: middle;
            display:inline-block;
        }
    </style>  
</head>
<body>
    <div class="box">
        <div class="cen"></div>
    </div>
</body>
</html>
方法三:使用css3 transform:translate(-50%; -50%)苔巨;

優(yōu)點(diǎn):高大上,可以在webkit內(nèi)核的瀏覽器中使用
缺點(diǎn):不支持IE9以下不支持transform屬性

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>李鵬-前端開(kāi)發(fā)</title>
</head>
<style>
.box{
    position: relative;
    height:800px;
    width: 800px;
    border:1px solid #000;
}
.box .cen{
    width: 200px;
    height: 200px;
    background: #0ff;
    position: absolute;
    top: 50%;
    left: 50%;
    color: #fff;
    transform: translate(-50%, -50%);
}
</style>
<body>
<div class="box">
        <div class="cen"></div>
    </div>
</body>
</html>
方法四:使用css3 flex布局

優(yōu)點(diǎn):簡(jiǎn)單 快捷
缺點(diǎn):兼容不好吧

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>李鵬-前端開(kāi)發(fā)</title>
</head>
<style>
.parent4{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 800px;
    height:800px;
    border:1px solid #000;
}
.parent4 .child{
    color:#fff;
    width: 200px;
    height: 200px;
    background: #0ff;
}
</style>
<body>
    <div class="parent4">
        <div class="child"></div>
    </div>
</body>
</html>

好了,一共就以上幾種方法废离,看網(wǎng)上有的說(shuō)插入一個(gè)空標(biāo)簽之類(lèi)的恋拷,我覺(jué)得不怎么好,畢竟需要插入一個(gè)空標(biāo)簽厅缺,還是不如我這幾種方法,大家覺(jué)得哪種喜歡就用哪種吧宴偿。 我是比較推薦第一種定位布局的那個(gè)湘捎。
以上,結(jié)束窄刘。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末窥妇,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子娩践,更是在濱河造成了極大的恐慌活翩,老刑警劉巖烹骨,帶你破解...
    沈念sama閱讀 221,635評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異材泄,居然都是意外死亡沮焕,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)拉宗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)峦树,“玉大人,你說(shuō)我怎么就攤上這事旦事】” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,083評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵姐浮,是天一觀的道長(zhǎng)谷遂。 經(jīng)常有香客問(wèn)我,道長(zhǎng)卖鲤,這世上最難降的妖魔是什么肾扰? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,640評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮扫尖,結(jié)果婚禮上白对,老公的妹妹穿的比我還像新娘。我一直安慰自己换怖,他們只是感情好甩恼,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著沉颂,像睡著了一般条摸。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上铸屉,一...
    開(kāi)封第一講書(shū)人閱讀 52,262評(píng)論 1 308
  • 那天钉蒲,我揣著相機(jī)與錄音,去河邊找鬼彻坛。 笑死顷啼,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的昌屉。 我是一名探鬼主播钙蒙,決...
    沈念sama閱讀 40,833評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼间驮!你這毒婦竟也來(lái)了躬厌?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,736評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤竞帽,失蹤者是張志新(化名)和其女友劉穎扛施,沒(méi)想到半個(gè)月后鸿捧,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,280評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡疙渣,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評(píng)論 3 340
  • 正文 我和宋清朗相戀三年匙奴,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片昌阿。...
    茶點(diǎn)故事閱讀 40,503評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡饥脑,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出懦冰,到底是詐尸還是另有隱情灶轰,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布刷钢,位于F島的核電站笋颤,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏内地。R本人自食惡果不足惜伴澄,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望阱缓。 院中可真熱鬧非凌,春花似錦、人聲如沸荆针。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,340評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)航背。三九已至喉悴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間玖媚,已是汗流浹背箕肃。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,460評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留今魔,地道東北人勺像。 一個(gè)月前我還...
    沈念sama閱讀 48,909評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像错森,于是被迫代替她去往敵國(guó)和親咏删。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案问词? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,759評(píng)論 1 92
  • 收聽(tīng)音頻,戳鏈接,舊號(hào)itclan已暫停使用,歡迎關(guān)注微信itclanCoder公眾號(hào)可收聽(tīng)更多音頻 前言 關(guān)于網(wǎng)...
    itclanCoder閱讀 8,188評(píng)論 3 30
  • 總結(jié)當(dāng)前知道的對(duì)div嵌套標(biāo)簽水平垂直居中方法,如果還有新的方法嘀粱,請(qǐng)不吝賜教哦激挪。好辰狡,下面開(kāi)始列舉代碼咯。首先給需要...
    風(fēng)銘閱讀 2,300評(píng)論 0 5
  • (順嵌垄分,倒嵌) 錦旗絢麗意深長(zhǎng)宛篇, 繡鳳描龍正氣藏。 海誓山盟心戀社薄湿, 棠花入韻韻悠揚(yáng)叫倍。 棠花入韻韻悠揚(yáng), 海月初升...
    艾思閱讀 463評(píng)論 13 23
  • 文/Julia 胡適先生說(shuō):“一個(gè)人的前程豺瘤,往往全靠他怎樣利用閑暇時(shí)間吆倦,閑暇定終生∽螅” 讀書(shū)時(shí)代蚕泽,有一個(gè)男同學(xué),學(xué)...
    居里葉閱讀 447評(píng)論 0 3