1. <span id="z4nqb"></span>

      flex

      語法:

      flex:none | <' flex-grow '> <' flex-shrink >'? || <' flex-basis '>

      默認值看各分拆屬性

      適用于:flex子項

      繼承性:無

      動畫性:否

      計算值:看各分拆屬性

      取值:

      none:
      none關(guān)鍵字的計算值為: 0 0 auto
      <' flex-grow '>:
      用來指定擴展比率,即剩余空間是正值時此「flex子項」相對于「flex容器」里其他「flex子項」能分配到空間比例。
      在「flex」屬性中該值如果被省略則默認為「1」
      <' flex-shrink '>:
      用來指定收縮比率,即剩余空間是負值時此「flex子項」相對于「flex容器」里其他「flex子項」能收縮的空間比例。
      在收縮的時候收縮比率會以伸縮基準值加權(quán)
      在「flex」屬性中該值如果被省略則默認為「1」
      <' flex-basis '>:
      用來指定伸縮基準值,即在根據(jù)伸縮比率計算出剩余空間的分布之前,「flex子項」長度的起始數(shù)值。
      在「flex」屬性中該值如果被省略則默認為「0%」
      在「flex」屬性中該值如果被指定為「auto」,則伸縮基準值的計算值是自身的 <' width '> 設(shè)置,如果自身的寬度沒有定義,則長度取決于內(nèi)容。

      說明:

      復合屬性。設(shè)置或檢索彈性盒模型對象的子元素如何分配空間。
      • 如果縮寫「flex: 1」, 則其計算值為「1 1 0%」
      • 如果縮寫「flex: auto」, 則其計算值為「1 1 auto」
      • 如果「flex: none」, 則其計算值為「0 0 auto」
      • 如果「flex: 0 auto」或者「flex: initial」, 則其計算值為「0 1 auto」,即「flex」初始值
      • 示例:如下情況每個元素的計算寬是多少

        Code:

        <ul class="flex"> <li>a</li> <li>b</li> <li>c</li> </ul> .flex{display:flex;width:800px;margin:0;padding:0;list-style:none;} .flex :nth-child(1){flex:1 1 300px;} .flex :nth-child(2){flex:2 2 200px;} .flex :nth-child(3){flex:3 3 400px;}

        本例定義了父容器寬(即主軸寬)為800px,由于子元素設(shè)置了伸縮基準值flex-basis,相加300+200+400=900,那么子元素將會溢出900-800=100px;
        由于同時設(shè)置了收縮因子,所以加權(quán)綜合可得300*1+200*2+400*3=1900px;
        于是我們可以計算a,b,c將被移除的溢出量是多少:
        a被移除溢出量:(300*1/1900)*100,即約等于16px
        b被移除溢出量:(200*2/1900)*100,即約等于21px
        c被移除溢出量:(400*3/1900)*100,即約等于63px
        最后a,b,c的實際寬度分別為:300-16=284px, 200-21=179px, 400-63=337px

      • 仍然是上面這個例子,不過將容器的寬度改成了1500px

        Code:

        <ul class="flex"> <li>a</li> <li>b</li> <li>c</li> </ul> .flex{display:flex;width:1500px;margin:0;padding:0;list-style:none;} .flex :nth-child(1){flex:1 1 300px;} .flex :nth-child(2){flex:2 2 200px;} .flex :nth-child(3){flex:3 3 400px;}
        本例定義了父容器寬(即主軸寬)為1500px,由于子元素設(shè)置了伸縮基準值flex-basis,相加300+200+400=900,那么容器將有1500-900=600px的剩余寬度;
        于是我們可以計算a,b,c將被擴展量是多少:
        a的擴展量:(1/(1+2+3))*600,即約等于100px
        b的擴展量:(2/(1+2+3))*600,即約等于200px
        c的擴展量:(3/(1+2+3))*600,即約等于300px
        最后a,b,c的實際寬度分別為:300+100=400px, 200+200=400px, 400+300=700px
        從本例能看出:

        當「flex-basis」在「flex」屬性中不為0時(包括值為auto,此時伸縮基準值等于自身內(nèi)容寬度),「flex子項」將分配容器的剩余空間(剩余空間即等于容器寬度減去各項的伸縮基準值)

        當「flex-basis」在「flex」屬性中等于0時,「flex子項」將分配容器的所有空間(因為各項的伸縮基準值相加等于0,剩余空間等于容器寬度減去各項的伸縮基準值,即減0,最后剩余空間值等于容器寬度),所以可以借助此特性,給各子項定義「flex: n」來進行按比例均分容器總寬度

      • 對應(yīng)的腳本特性為flex。

      兼容性:

      • 淺綠 = 支持
      • 紅色 = 不支持
      • 粉色 = 部分支持
      Values IE Firefox Chrome Safari Opera iOS Safari Android Browser Android Chrome
      Basic Support 6.0-10.0 2.0-21.0 4.0-20.0 6.0 15.0+-webkit- 6.0-6.1 2.1-4.3 18.0-19.0
      11.0+ 22.0+ 21.0+-webkit- 6.1+-webkit- 17.0+ 7.0+-webkit- 4.4+ 20.0+-webkit-
      29.0+ 9.0+ 9.0+ 28.0+

      示例:

      本頁最后更新時間:

      2015.7.29

      1. <span id="z4nqb"></span>
        精品国产内射 | 日韩三级黄色网 | 日韩激情视频一区二区三区 | 亚洲操逼无码 | 操逼视频黄 | 福利特级操比在线视频 | ZZjiZZji亚洲日本少妇 | 亚洲综合色欲欧美国产一区四季 | 干批视频免费 | 成人在线做爱 |