国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

css居中總結(jié)

gxyz / 2484人閱讀

摘要:前言一直有個(gè)想法要把各種居中的方法總結(jié)一下,但還是一直沒有時(shí)間去整理。最近剛好在做樣式重構(gòu)的項(xiàng)目,順便把一下自己有用過的或積累的居中方法給總結(jié)一下。又必須有個(gè)父級(jí)對(duì)其進(jìn)行設(shè)置居中。

前言
一直有個(gè)想法要把各種居中的方法總結(jié)一下,但還是一直沒有時(shí)間去整理。最近剛好在做樣式重構(gòu)的項(xiàng)目,順便把一下自己有用過的或積累的居中方法給總結(jié)一下。
水平居中

行內(nèi)元素水平居中

行內(nèi)元素的居中比較簡(jiǎn)單,直接使用text-align就可以達(dá)到居中效果

/* 行內(nèi)元素 */
.parent4 {
    text-align: center;
}

塊級(jí)元素水平居中(塊級(jí)水平居中方法列舉以下幾種)

margin auto

這是最常用到的塊級(jí)水平居中,利用margin:auto自動(dòng)達(dá)到居中的效果,不過前提是子元素必須知道寬度

缺點(diǎn): 必須提前知道元素的尺寸

/* 必須設(shè)置子元素寬度 */
.child1 {
    width: 100px;
    height: 100px;
    margin: 0 auto; 
    background: aqua;
}

利用inline-block實(shí)現(xiàn)水平居中

缺點(diǎn): 必須有個(gè)父元素對(duì)其設(shè)置text-align

.parent2 {
  
    text-align: center;

}

/* 必須通過父元素 */
.child2 {
    display: inline-block;
    /*width: 100px;
    height: 100px;*/
    background: aqua;
}

利用css3新增的width屬性fit-content實(shí)現(xiàn)

很多情況下我們并不清楚一個(gè)元素的具體尺寸是多少,但是又要實(shí)現(xiàn)水平居中。這個(gè)時(shí)候我們想起float,自動(dòng)撐開寬高,但是可惜的是float的脫離了文檔流并不能用margin:auto去實(shí)現(xiàn)元素的水平居中。inline-block又必須有個(gè)父級(jí)對(duì)其進(jìn)行設(shè)置居中。css3新增加了width里的屬性實(shí)現(xiàn)了元素類似于float,inline-block的包裹效果,并且可以使用margin: auto進(jìn)行居中。fit-content會(huì)根據(jù)你的內(nèi)容去包裹你的元素。在此處不細(xì)說明,該興趣的小伙伴可以看看張?chǎng)涡窭蠋煂?duì)這幾個(gè)新增的屬性的講解

/* width的其他屬性 */
 .parent3 {
    width: fit-content;
    margin: 10px auto;
    background: aquamarine;

}
垂直居中

行內(nèi)元素垂直居中

line-height實(shí)現(xiàn)當(dāng)行文字垂直居中

  /* 行內(nèi)元素,當(dāng)行文字垂直居中 */
    .parent1 {
        height: 100px;
        line-height: 100px;
        background: wheat;
    }

塊級(jí)元素垂直居中(塊級(jí)元素居中的方法比較多,總結(jié)如下)

margin負(fù)邊距實(shí)現(xiàn)

該方法使用絕對(duì)定位利用margin負(fù)值將其居中,前提是需要 提前知道尺寸

優(yōu)點(diǎn):兼容性不錯(cuò)

缺點(diǎn): 需要提前知道尺寸

    .parent2 {
        position: relative;
        background: rosybrown;
        height: 100px;
    }
    .child2 {  
        background: blue;
        position: absolute;
        width: 80px;
        height: 40px;
        left: 50%;
        top: 50%;
        margin-top: -20px;
        margin-left: -40px;
    }

如何在不知道尺寸的情況下垂直居中呢,CSS3——translate屬性的出現(xiàn)為我們提供了可能。該方法利用translate以自身的寬高為基準(zhǔn)來達(dá)到居中效果,相當(dāng)于margin負(fù)值的作用,不過我們不需要知道尺寸,translate幫我們解決了。transform中translate偏移的百分比值是相對(duì)于自身大小的,

優(yōu)點(diǎn): 不需要提前知道尺寸

缺點(diǎn): 兼容性不好(在移動(dòng)端上基本支持)

/* 塊級(jí)元素: 絕對(duì)定位 + transform  優(yōu)點(diǎn): 不需要提前知道尺寸
缺點(diǎn): 兼容性不好*/
.parent3 {
    position: relative;
    background: antiquewhite;
    height: 200px;
}
.child3 {
    background: salmon;
    position: absolute;
    width: 80px;
    height: 40px;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
}

塊級(jí)元素:絕對(duì)定位 + margin: auto;

結(jié)合以上兩種,在介紹一個(gè)利用絕對(duì)定位的一個(gè)很好用的方法
這是從張?chǎng)涡窭蠋煹牟┛桶徇\(yùn)過來的詳情戳這里。

優(yōu)點(diǎn):不需要根據(jù)寬高去做相應(yīng)的位移,自動(dòng)幫你居中好了,兼容性好

/* 塊級(jí)元素:絕對(duì)定位 + margin: auto; 優(yōu)點(diǎn):不需要根據(jù)寬高去做相應(yīng)的位移,兼容性好 */
.parent4 {
    position: relative;
    background: wheat;
    height: 200px;
}
.child4 {
    width: 80px;
    height: 40px;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: blue;
}

利用display: table-cell實(shí)現(xiàn)垂直居中

display的table和table-cell一般情況下用的不多,所以很少有人去關(guān)注它。這個(gè)實(shí)現(xiàn)的原理就是把其變成表格樣式,再利用表格的樣式來進(jìn)行居中,在某些情況下還是很方便的。

/* 塊級(jí)元素:display: table-cell */
.parent5 {
    width: 600px;
    height: 200px;
    border: 1px solid red;
    display: table;
}
.child5 {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}
 
/* 水平垂直居中 */
.parent7 {
    width: 400px;
    height: 300px;
    display: table-cell;
    vertical-align: middle;
    border: 1px solid red;
}
.child7 {
    display: inline-block;
    vertical-align: middle;
    background: blue;
}

利用calc()計(jì)算屬性

缺點(diǎn): 兼容性差,需要計(jì)算,消耗性能,需要提前知道尺寸

.parent8 {
    width: 300px;
    height: 300px;
    border: 1px solid red;
    position: relative;
}
.child8 {
    top:-webkit-calc(50%-50px);
    top:-moz-calc(50%-50px);
    top:calc(50%-50px);
    left:-webkit-calc(50%-50px);
    left:-moz-calc(50%-50px);
    left:calc(50%-50px);
    width: 100px;
    height: 100px;
    background: blue;
    
}

利用偽元素實(shí)現(xiàn)居中(這個(gè)原理我還沒搞懂,但是實(shí)踐過真的ok)

.parent9 {
    width: 300px;
    height: 300px;
    border: 1px solid red;
    text-align: center;
}
.child9 {
    background: blue;
    width: 100px;
    height: 40px;
    display: inline-block;
    vertical-align: middle;
}
.parent9::before {
    content: "";
    height: 100%;
    display: inline-block;
    vertical-align: middle;
}

塊級(jí)元素:display: flex

缺點(diǎn):在pc上兼容性不好

.parent10 {
    width: 600px;
    height: 200px;
    border: 1px solid red;
    display: flex;
    align-items: center;  /*垂直居中*/
    justify-content: center;  /*水平居中*/
}
.child10 {
    background: blue;
}
總結(jié)
以上是分別總結(jié)了水平居中和垂直居中常用的方法,要想實(shí)現(xiàn)水平垂直居中可以自己組合搭配一下。方法目前總結(jié)了這幾種,之后有新的方法也會(huì)持續(xù)更新,未完待續(xù)連載中....

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/117442.html

相關(guān)文章

  • 前端-CSS3&H5

    摘要:高度模型淺識(shí)為的簡(jiǎn)寫,簡(jiǎn)稱為塊級(jí)格式化上下文,為瀏覽器渲染某一區(qū)域的機(jī)制,中只有和中還增加了和。并非所有的布局都會(huì)在開發(fā)中使用,但是其中也會(huì)涉及一些知識(shí)點(diǎn)。然而在不同的純制作各種圖形純制作各種圖形多圖預(yù)警 一勞永逸的搞定 flex 布局 尋根溯源話布局 一切都始于這樣一個(gè)問題:怎樣通過 CSS 簡(jiǎn)單而優(yōu)雅的實(shí)現(xiàn)水平、垂直同時(shí)居中。記得剛開始學(xué)習(xí) CSS 的時(shí)候,看到 float 屬性不...

    xiaolinbang 評(píng)論0 收藏0
  • CSS居中方法總結(jié)

    摘要:此時(shí)檢查元素即可即可實(shí)現(xiàn)內(nèi)層的實(shí)現(xiàn)了居中這種方式是最為我們熟知的,其缺點(diǎn)是需要設(shè)置子元素的寬度。交叉軸居中當(dāng)設(shè)置了屬性時(shí),主軸的方向會(huì)改變。垂直居中實(shí)現(xiàn)方案用的屬性,以及定位,與上面的水平居中類似,只是改為即可。 水平居中實(shí)現(xiàn)方案 確定寬度的元素水平居中 1.我們可以通過給該元素的父級(jí)設(shè)置margin: 0 auto的方式來實(shí)現(xiàn)。HTML: ...

    ralap 評(píng)論0 收藏0
  • CSS水平垂直居中總結(jié)

    摘要:垂直居中表格布局法為什么就能垂直居中拜讀了張?chǎng)涡翊笊竦奈恼滦懈咧傅氖鞘裁葱懈咧傅氖俏谋拘械幕€間的距離。行內(nèi)框具有垂直居中性。 CSS水平居中、垂直居中、水平垂直居中方法總結(jié) 文字的水平居中: text-align:center; 單行文字的垂直居中: line-height:30px; height:30px; 讓有寬度的div水平居中: margin: 0 auto; width:...

    mist14 評(píng)論0 收藏0
  • 對(duì)css居中的一點(diǎn)總結(jié)

    摘要:為了更好的加深對(duì)居中的理解,搜集和閱讀相關(guān)資料,發(fā)現(xiàn)不錯(cuò)的文章將其整理出來。 在學(xué)習(xí)前端的過程中,發(fā)現(xiàn)元素和文本的水平居中和垂直居中,是經(jīng)常會(huì)出現(xiàn)的問題,在實(shí)際工作中也會(huì)經(jīng)常碰到。居中的技巧有很多,但在編寫代碼的過程中,發(fā)現(xiàn)有時(shí)候技巧管用,有時(shí)候不管用,于是就將每個(gè)知道的方案都試一遍,找到合適的。這種情況究其原因是對(duì)居中的認(rèn)識(shí)不夠深入,只是停留在實(shí)現(xiàn)需求的水平上。為了更好的加深對(duì)居中的...

    BenCHou 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<