整理CSS中display flex(佈局利器)

關於display:flex佈局,有人瞭解頗深,我也是看着別人的東西學習的。html

display:flex的佈局是什麼、基本概念之類的我根本就不瞭解,只會用。每次看到概念之類的東西,我都是掃一眼就過去。佈局

第一個屬性和用法:flex-direction學習

我瞭解的方法有4個:row(水平排列)、row-revese(水平反向排列)、column(垂直排列)、column-reserve(垂直反向排列)flex

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <div style="width:300px;border:1px solid red;display: flex;flex-direction: row;">
            <div style="width: 100px;height: 100px;background-color: black;"></div>
            <div style="width: 100px;height: 100px;background-color: green;"></div>
            <div style="width: 100px;height: 100px;background-color: yellow;"></div>
            <div style="width: 100px;height: 100px;background-color: blue;"></div>
        </div>
    </body>
</html>

上面的代碼和效果圖是屬性爲row時的效果spa

注意:雖然是設置好的寬度,可是父容器只有300px,子div無法達到100px,而是適應父容器3d

只須要將 flex-direction: row代碼替換成 flex-direction: row-revese 或者  flex-direction: column 或則  flex-direction: column-reserve,就能夠獲得不一樣的效果code

下面是效果圖:orm

row-revesehtm

-------blog

column

-------

column-reverse

-------

第二個屬性和用法:flex-wrap

這是換行屬性:nowrap(不換行)、wrap(換行)、wrap-reverse(方向換行)

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
    </head>
    <body>
        <div style="width:300px;border:1px solid red;display: flex;flex-wrap: wrap;">
            <div style="width: 100px;height: 100px;background-color: black;"></div>
            <div style="width: 100px;height: 100px;background-color: green;"></div>
            <div style="width: 100px;height: 100px;background-color: yellow;"></div>
            <div style="width: 100px;height: 100px;background-color: blue;"></div>
        </div>
    </body>
</html>

這是換行的代碼和效果圖

-------

將屬性  flex-wrap: wrap  替換成 nowrap(不換行)、wrap-reverse(方向換行)獲得的效果圖以下:

nowrap

-----

wrap-reverse

---------

第三個屬性和用法:justify-content

包含的屬性有: justify-content: start | end | flex-start | flex-end | center | left | right | space-between | space-around | space-evenly | stretch | safe | unsafe | baseline | first baseline | last baseline

(這些屬性都是抄別人的)

  • flex-start(默認值):左對齊;

    左對齊
     
  • flex-end:右對齊;

    右對齊
     
  • center:居中;

        
       居中對齊
 
  • space-between:兩端對齊,項目之間間隔相等;
       
       兩端對齊
 
  • space-around:每一個項目兩側的間隔相等,即項目之間的間隔比項目與邊框的間隔大一倍。
      
     兩側間隔相等
 
  在下小白,也是從那裏偷來了不少東西[捂臉]

其餘屬性:如align-item、align-content、justify-content 請查看原文:http://www.javashuo.com/article/p-axqkggxm-br.html

相關文章
相關標籤/搜索