溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

css3實(shí)現(xiàn)多欄布局的方法有哪些

發(fā)布時(shí)間:2022-02-28 14:41:39 來(lái)源:億速云 閱讀:165 作者:iii 欄目:web開(kāi)發(fā)

本篇內(nèi)容主要講解“css3實(shí)現(xiàn)多欄布局的方法有哪些”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“css3實(shí)現(xiàn)多欄布局的方法有哪些”吧!

css3實(shí)現(xiàn)多欄布局的方法:1、利用float實(shí)現(xiàn)多欄布局;2、利用inline-block盒模型實(shí)現(xiàn)多欄布局;3、利用“display: flex”彈性布局實(shí)現(xiàn)多欄布局;4、利用“display: table”方式實(shí)現(xiàn)多欄布局。

css3實(shí)現(xiàn)多欄布局的方法有哪些

本教程操作環(huán)境:windows7系統(tǒng)、CSS3&&HTML5版、Dell G3電腦。

css實(shí)現(xiàn)多欄布局的幾種方式

假如把下面的三個(gè)div顯示在同一行

<div id="parent">
    <div id="box1">1</div>
    <div id="box2">2</div>
    <div id="box3">3</div>
</div>

css3實(shí)現(xiàn)多欄布局的方法有哪些

1:float實(shí)現(xiàn)多欄布局

float屬性控制目標(biāo)HTML組件是否浮動(dòng)以及如何浮動(dòng)。設(shè)置該屬性過(guò)后,對(duì)象會(huì)被當(dāng)做塊組件處理。float的取值一共有四個(gè):left(向左浮動(dòng))、Right(向右浮動(dòng))、none(不浮動(dòng))、inherit(繼承父元素值),將box1,box2,box3都設(shè)置成向左浮動(dòng),浮動(dòng)元素的下一個(gè)兄弟元素如果也設(shè)置了同一浮動(dòng)方向,則會(huì)緊隨改元素顯示。

設(shè)置了float之后,元素會(huì)脫離普通文檔流。它們的父元素也不會(huì)被撐開(kāi),所以#parent的高度此時(shí)為0。

    #parent>div{
        border:1px solid black;
        float:left;
        width:200px;
        height:200px;
        text-align: center;
 
    }
   #box1{
       background-color:red;
   }
   #box2{
       background-color:yellow;
   }
    #box3 {
        background-color:blue;
    }

我們也可以這樣,將box1,box2,設(shè)置成向左浮動(dòng),box3不浮動(dòng)。由于box1,box2設(shè)置了浮動(dòng)之后脫離了普通文檔流。對(duì)box3來(lái)說(shuō)就像前面不存在box1,box2一樣,box3也會(huì)顯示在這一行,但是會(huì)被box1遮擋住。設(shè)置box3的 margin-left:400px;可以讓它看起來(lái)像是顯示在box1,box2后面。這個(gè)時(shí)候#parent被box3撐開(kāi),高度此時(shí)為202px。

    #parent>div{
        border:1px solid black;
        width:200px;
        height:200px;
        text-align: center;
 
    }
    #box1{
       float:left;
        background-color:red;
    }
    #box2{
        float:left;
        background-color:yellow;
    }
    #box3 {
        margin-left:400px;
        background-color:blue;
    }

2:inline-block盒模型

inline-block盒模型的元素既不會(huì)占據(jù)一行,同時(shí)也支持用width、height指定寬度和高度。display:inline-block 將對(duì)象呈現(xiàn)為inline對(duì)象,但是對(duì)象的內(nèi)容作為block對(duì)象呈現(xiàn)。之后的內(nèi)聯(lián)對(duì)象會(huì)被排列在同一行內(nèi)。通常需要設(shè)置vertical-align:top使其頂端對(duì)齊。

    #parent>div{
        display:inline-block;
        border:1px solid black;
        width:200px;
        height:200px;
        text-align: center;
    }
    #box1{
        background-color:red;
    }
    #box2{
        background-color:yellow;
    }
    #box3 {
        background-color:blue;
    }

inline-block水平呈現(xiàn)的元素間,換行顯示或空格分隔的情況下會(huì)有間距。把空格去掉間隙自然就會(huì)消失,這樣就不會(huì)顯示間隔。

<div id="parent">
    <div id="box1">1</div><div id="box2">2</div><div id="box3">3</div>
</div>

3:display: flex 彈性布局

設(shè)置#parent容器的 diaplay:flex;父容器相當(dāng)于一個(gè)彈性盒子。里面的div會(huì)按照f(shuō)lex-direction設(shè)置的模式排列。Flex彈性布局的功能就比較強(qiáng)大了,可以為盒狀模型提供最大的靈活性實(shí)現(xiàn)復(fù)雜的布局,任何一個(gè)容器都可以指定為 Flex 布局。flex-direction屬性決定主軸的方向,flex-direction: row;表示在父容器里橫向排列,flex-direction: column;表示在父容器里縱向排列。

    #parent{
        display: flex;
        flex-direction: row;
    }
    #parent>div{
        border:1px solid black;
        width:200px;
        height:200px;
        text-align: center;
    }
    #box1{
        background-color:red;
    }
    #box2{
        background-color:yellow;
    }
    #box3 {
        background-color:blue;
    }

4:display: table

display:table     設(shè)置了該屬性的元素作為塊級(jí)表格來(lái)顯示,類(lèi)似 <table>。
display:table-cell 設(shè)置了該屬性的元素會(huì)作為一個(gè)表格單元格顯示,類(lèi)似 <td> 和 <th>
可以用這一系列table-row-group、table-header-group、table-footer-group、table-row等用其他標(biāo)簽實(shí)現(xiàn)類(lèi)似于表格的布局。

#parent{
        display: table;
    }
    #parent>div{
        display:table-cell;
        border:1px solid black;
        width:200px;
        height:200px;
        text-align: center;
    }
    #box1{
        background-color:red;
    }
    #box2{
        background-color:yellow;
    }
    #box3 {
        background-color:blue;
    }

到此,相信大家對(duì)“css3實(shí)現(xiàn)多欄布局的方法有哪些”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI