flex寬度總結

看風景就發表於2017-05-30

flex寬度相關的屬性有三個 flex-grow,flex-shrink,flex-basis。下面分別介紹其相關特點:

flex-grow 擴大因子,主軸有剩餘空間時,元素分配到剩餘空間的比率

flex-shrink 收縮因子,主軸剩餘空間為負時,元素分配到剩餘空間的比率

flex-basis:設定元素初始大小,若未設定,則水平排列預設為元素的寬度,垂直排列預設為元素的高度

當flex-basis為0時,例如(flex:1),此時item的寬度不受width的影響

當flex-basis為auto時,item的寬度隨著width的變化增大或縮小

flex是flex-grow,flex-shrink,flex-basis的簡寫,簡稱GSB

flex的寫法與三個屬性的對照表

flex: none => flex: 0 0 auto;
flex: auto => flex: 1 1 auto;
flex: 0 => flex: 0 1 0%;
flex: 1 => flex: 1 1 0%;
flex: 0 auto => flex: 0 1 auto;(預設值)
flex: 0 1 => flex: 0 1 0%;

相關文章