7、彈性盒子模型(項目屬性)

此類屬性全部為項目屬性

1、flex-grow:定義項目放大比例 默認為0(即使有剩余空間都不分配)。值為num;無單位

(1)項目沒有給定寬度:

默認按照比例分配此時會造成寬度分配不均需要給所有項目加寬度width:0;

(2)項目給定寬度:

會分配剩余空間(寬度小于容器的前提下)
按照flex-grow: num;分配

!!!注意是分配剩余空間

2、flex-shrink:定義收縮比例 默認值為1(即使超出也不會超出會壓縮)。值為num;無單位

算法:
加權綜合(每個項目寬度自己的shrink 的總和)
收縮值(項目的寬度
shrink/加權綜合)
項目實際的寬度(項目初始寬度-收縮值)

!!!注意是壓縮超出空間

例:

{ width: 100px; flex-shrink: 1;  }
{ width: 200px; flex-shrink: 1; }
{ width: 200px; flex-shrink: 3; }//按照1:2:6(1*1:2*1:2*3)

3、flex-basis: 通俗的說就是寬度,

分配空間的時候要根據這一個值來進行計算,默認值auto(width屬性或者內容撐開的寬度),也就是說,如果有這個屬性,則按照這個屬性分配,如果沒有,按照width分配,width也沒有,按內容撐開的寬度分配

優先級:

flex-basis > width > 無寬度(內容撐開)

4、復合屬性flex: flex-grow flex-shrink flex-basis;

當容器寬度改變時,會根據給定的比例進行伸縮。

5、align-self 單獨的項目在交叉軸上的對齊方式

屬性值:stretch //默認值
flex-start //和默認值一樣
center //居中
flex-end //主軸尾對齊
baseline //基線對其
注:如果要用baseline對齊,則這些項目都要有這個屬性,是按照最大的字體的基線對齊

6、order排序 值越大,越靠后,并且了還可以拉到負的值(負值排在前面)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 移動開發基本知識點 一.使用rem作為單位 html { font-size: 100px; } @media(m...
    橫沖直撞666閱讀 3,514評論 0 6
  • H5移動端知識點總結 閱讀目錄 移動開發基本知識點 calc基本用法 box-sizing的理解及使用 理解dis...
    Mx勇閱讀 4,623評論 0 26
  • 前言 FlexBox是css3的一種新的布局方式,天生為解決布局問題而存在的它,比起傳統的布局方式,我們使用Fle...
    zevei閱讀 1,438評論 23 3
  • 在以前頁面布局多依賴于table,但table標簽太多,于是有了absolute布局,float布局等,但它們小問...
    張歆琳閱讀 4,168評論 3 55
  • CSS 3中彈性盒布局的最新版概述 在CSS 3中,CSS Flexible Box模塊為一個非常重要的模塊,該模...
    吾名無雙閱讀 1,248評論 0 5