欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

CSS圣杯布局是什么意思-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)CSS圣杯布局是什么意思的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過來看看吧。

望都網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)于2013年開始到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

在CSS中,圣杯布局是指兩邊盒子寬度固定,中間盒子自適應(yīng)的三欄布局,其中,中間欄放到文檔流前面,保證先行渲染;三欄全部使用“float:left”浮動(dòng),并配合left和right屬性。

前端的兩個(gè)經(jīng)典布局想必大家都有多了解--圣杯布局和雙飛翼布局,因?yàn)樗饶荏w現(xiàn)你懂HTML結(jié)構(gòu)又能體現(xiàn)出你對DIV+CSS布局的掌握。

事實(shí)上,圣杯布局其實(shí)和雙飛翼布局是一回事。它們實(shí)現(xiàn)的都是三欄布局,兩邊的盒子寬度固定,中間盒子自適應(yīng),也就是我們常說的固比固布局。它們實(shí)現(xiàn)的效果是一樣的,差別在于其實(shí)現(xiàn)的思想。

通過縮放頁面就可以發(fā)現(xiàn),隨著頁面的寬度的變化,這三欄布局是中間盒子優(yōu)先渲染,兩邊的盒子框子固定不變,即使頁面寬度變小,也不影響我們的瀏覽。注意:當(dāng)你縮放頁面的時(shí)候,寬度不能小于700PX,為了安全起見,好還是給body加一個(gè)最小寬度!
如果你有了那么一點(diǎn)理解以后,我們來看看圣杯布局的實(shí)現(xiàn):

注:reset部分的代碼大家自行添加

1、HTML結(jié)構(gòu):

<header>
    <h5>Header內(nèi)容區(qū)</h5>
</header>
<div class="container">
    <div class="middle">
        <h5>中間彈性區(qū)</h5>
    </div>
    <div class="left">
        <h5>左邊欄</h5>
    </div>
    <div class="right">
        <h5>右邊欄</h5>
    </div>
</div>
<footer>
    <h5>Footer內(nèi)容區(qū)</h5>
</footer>

有人可能會有疑惑,為什么中間的主體部分要寫在最前面。因?yàn)橹虚g盒子是要被優(yōu)先渲染嘛~并且設(shè)置其自適應(yīng),也就是width:100%。

2、css樣式:

header{
    width: 100%;    height: 40px;
    background-color: #8ecfd4;
}
.container{
    overflow:hidden;
}
.middle{
    width: 100%;
    background-color: #f7f537;
    float:left;
}
.left{ 
    width: 200px;
    background-color: #37f7c8;
    float:left;
}
.right{
    width: 200px;
    background-color: #eb6100;
    float:left;
}
footer{
    width: 100%; 
    height: 30px;
    background-color: #8ecfd4;
}

此時(shí)的效果圖:

CSS圣杯布局是什么意思

這時(shí)中間的三欄并沒有在一行內(nèi)顯示,原因也很明確。三欄都浮動(dòng)起來了,但是middle欄的寬度設(shè)置成了100%,到時(shí)左右兩邊的撐不下?lián)Q行顯示了。

現(xiàn)在我們需要做的是將left欄放到左側(cè),right欄放到右側(cè)。那么我們就需要css的負(fù)margin了。

3、利用負(fù)邊距布局

.left{
    margin-left:-100%;
}

讓右邊的盒子上去

.right {
    margin-left:-200px;
}

此時(shí)的效果圖

CSS圣杯布局是什么意思

實(shí)現(xiàn)固比固布局

雖然現(xiàn)在貌似已經(jīng)實(shí)現(xiàn)了我們想要的布局,但是在中間填充內(nèi)容的時(shí)候我們還是會發(fā)現(xiàn)問題。這一步我們也將中間的主體部分給一個(gè)高度,方便視覺效果。

.middle{
    width: 100%;
    height: 200px; 
    background-color: #f7f537;
    float:left;
}
.left{    
    width: 200px;
    height: 200px;
    background-color: #37f7c8;
    float:left;
}
.right{
    width: 200px;
    height: 200px;
    background-color: #eb6100;
    float:left;
}

CSS圣杯布局是什么意思

從上面的效果圖可以看出,middle欄的內(nèi)容被兩邊的部分遮擋住的,這并不是我們想要的,所以我們的工作還得繼續(xù)。

4、讓中間自適應(yīng)的盒子安全顯示(利用父級元素設(shè)置左右內(nèi)邊距的值,把父級的三個(gè)子盒子往中間擠。)

.container{ 
    padding: 0 200px;
}

這里的200px是左右盒子的寬度。

效果如下:

CSS圣杯布局是什么意思

利用父級的內(nèi)邊距將盒子往中間擠

我們可以看到,左右兩邊的內(nèi)邊距是有了,但是中間盒子上的內(nèi)容還是被壓著。

5、左右兩邊分開來(給左右兩個(gè)盒子加一個(gè)定位,加了定位之后左右兩個(gè)盒子就可以設(shè)置left和right值。)

.left{ 
    position: relative; 
    left: -200px;
}
.right{
    position: relative;
    right: -200px;
}

看最終效果圖

CSS圣杯布局是什么意思

現(xiàn)在我們的圣杯布局就OK啦!實(shí)現(xiàn)了我們要的效果,左右側(cè)的盒子固定,中間盒子自適應(yīng),而且中間盒子的內(nèi)容完全不受影響。希望對大家有幫助。

感謝各位的閱讀!關(guān)于CSS圣杯布局是什么意思就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

文章標(biāo)題:CSS圣杯布局是什么意思-創(chuàng)新互聯(lián)
網(wǎng)頁URL:http://chinadenli.net/article18/deeedp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、企業(yè)網(wǎng)站制作、App開發(fā)、做網(wǎng)站、外貿(mào)建站動(dòng)態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司