明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

彈性布局是什么?彈性布局flex的基本應(yīng)用(附代碼)

[摘要]彈性布局是什么?彈性布局(flex),顧名思義是一種布局方法,現(xiàn)如今,基本所有的瀏覽器都已經(jīng)支持彈性布局。那么,接下來本文所給大家分享的就是彈性布局flex的基本應(yīng)用。如何應(yīng)用彈性布局,代碼如下:<!DOCTYPE html> <html> <head><...
彈性布局是什么?彈性布局(flex),顧名思義是一種布局方法,現(xiàn)如今,基本所有的瀏覽器都已經(jīng)支持彈性布局。那么,接下來本文所給大家分享的就是彈性布局flex的基本應(yīng)用。

如何應(yīng)用彈性布局,代碼如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        div{
            border: 1px solid #ccc;
            box-sizing: border-box;
        }
        .box{
            height:20vh;            
            display: flex;          
        }
        .box div{           
            flex: 1; 
        }
        .box div:last-child{
            flex: 2;
        }
    </style>
</head>
<body>
    <div>
        <div>Document1</div>
        <div>Document2</div>
        <div>Document3</div>
        <div>Document4</div>
        <div>Document5</div>
    </div>    
</body>
</html>

運(yùn)行結(jié)果如下:

2345截圖20180801144649.png

容器的設(shè)置

flex有6個(gè)屬性可以設(shè)置:

flex-direction:row(主軸由左向右,默認(rèn)) / row-reverse(主軸由右向左) / column (主軸由上向下)/ column-reverse (主軸由下向上) 決定主軸的方向

flex-wrap:nowrap(默認(rèn),不換行) / wrap(換行) / wrap-reverse(換行,第一行在下方) 決定項(xiàng)目在一條軸線上排不下時(shí)的換行方式

flex-flow:是上面兩個(gè)屬性的簡寫模式 默認(rèn)值:flex-flow:row nowrap。

justify-content:flex-start(默認(rèn)值,左對齊) / flex-end(右對齊) / center(居中) / space-between(兩端對齊,項(xiàng)目之間的間隔相等) /
space-around(每個(gè)項(xiàng)目之間的間隔相等,所以項(xiàng)目之間的間隔比項(xiàng)目與邊框之間的價(jià)格大一倍); 決定項(xiàng)目在主軸上的對齊方式。space-between/around在自適應(yīng)調(diào)節(jié)間距時(shí)很有用

align-items:flex-start(交叉軸的起點(diǎn)對齊) / flex-end(交叉軸的終點(diǎn)對齊) / center(交叉軸的中點(diǎn)對齊) / baseline(項(xiàng)目的第一行文字的基線對齊)/stretch(默認(rèn)值,若項(xiàng)目未設(shè)置高度或設(shè)置為auto,項(xiàng)目將占滿這整個(gè)容器的高度)。 定義項(xiàng)目在交叉軸上的對齊方式

align-content:flex-start(與交叉軸的起點(diǎn)對齊) / flex-end(與交叉軸的終點(diǎn)對齊) / center(與交叉軸的中點(diǎn)對齊) /
space-between(與交叉軸的兩端對齊,軸線之間的間隔平均分布) /space-around(每跟軸線兩側(cè)的間隔都相等,所以,軸線之間的間隔比軸線與邊框的間隔大一倍)
/ stretch(默認(rèn)值,軸線占滿整個(gè)交叉軸)。定義多根軸線的對齊方式,如果項(xiàng)目自有一根軸線,該屬性不起作用

項(xiàng)目的屬性設(shè)置

order:定義項(xiàng)目的排列順序,數(shù)字越小,排列越靠前,默認(rèn)為0.

flex-grow:定義項(xiàng)目的放大比例,默認(rèn)為0,默認(rèn)情況下即使有剩余空間項(xiàng)目也不會(huì)放大?s放的方向?yàn)閒lex-direction的方向。

flex-shrink:定義項(xiàng)目的縮小比例,默認(rèn)為1,空間不足時(shí),該項(xiàng)目會(huì)縮小。其值為0表示不縮小.縮放的方向?yàn)閒lex-direction的方向。

flex-basis:定義了在分配多余空間之前,項(xiàng)目占據(jù)的主軸空間(main size),瀏覽器根據(jù)這個(gè)屬性沒計(jì)算主軸是否有多余空間,默認(rèn)值為 auto,即項(xiàng)目的本來大小。flex-basis:80px;寬度(方向?yàn)閞ow)設(shè)置為80px;

flex:是上面三個(gè)屬性的簡寫,默認(rèn)值為 0 1 auto.有兩個(gè)快捷值:auto(1 1 auto)和none(0 0 auto)

align-self:該屬性允許耽擱項(xiàng)目與其他項(xiàng)目不同的對齊方式,課覆蓋align-items的屬性值。默認(rèn)值為auto,表示繼承父元素的align-items屬性,如果沒有父元素,則為stretch。

align-self:auto / flex-start / flex-end / center /baseline /stretch flex-basis:值為0與auto(默認(rèn))時(shí)的區(qū)別:前者沒有將整個(gè)項(xiàng)目進(jìn)行計(jì)算,而后者則是忽略內(nèi)容進(jìn)行算的,所以如果布局是需要的是每個(gè)項(xiàng)目的百分比配置,則應(yīng)當(dāng)將flex-basis設(shè)置為0.

相關(guān)推薦:

HTML中彈性布局(Flex)的介紹(附代碼)

以上就是彈性布局是什么?彈性布局flex的基本應(yīng)用(附代碼)的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。