CSS-3 新弹性盒模型属性

flex

语法:flex:none | [ flex-grow ] || [ flex-shrink ] || [ flex-basis ]

取值:

  • none:none关键字的计算值为: 0 0 auto

  • [ flex-grow ]:定义弹性盒子元素的扩展比率。

  • [ flex-shrink ]:定义弹性盒子元素的收缩比率。

  • [ flex-basis ]:定义弹性盒子元素的默认基准值。

复合属性说明

复合属性:设置或检索弹性盒模型对象的子元素如何分配空间

如果缩写flex:1, 则其计算值为:1 1 0

#box{display:-webkit-flex;display:flex;width:800px;margin:0;padding:0;list-style:none;}
#box3 li:nth-child(1){-webkit-flex:1 1 300px;flex:1 1 300px;background:#999;}
#box3 li:nth-child(2){-webkit-flex:1 2 500px;flex:1 2 500px;background:#aaa;}
#box3 li:nth-child(3){-webkit-flex:1 3 600px;flex:1 3 600px;background:#ccc;}
上例中,定义了父容器宽(即主轴宽)为800px,由于子元素设置了伸缩基准值flex-basis,相加300+500+600=1400,那么子元素将会溢出1400-800=600px;
由于同时设置了收缩因子,所以加权综合可得300*1+500*2+600*3=3100px;
于是我们可以计算a,b,c将被移除的溢出量是多少:
a被移除溢出量:300*1/3100*600=3/31,即约等于58px
b被移除溢出量:500*2/3100*600=10/31,即约等于194px
c被移除溢出量:600*3/3100*600=18/31,即约等于348px
最后a,b,c的实际宽度分别为:300-58=242px, 500-194=306px, 600-348=252px

多用在移动端,兼容性在 andriod4.1+ 就目前主流的设备系统绝大都是支持的。

转载于:https://www.cnblogs.com/mcat/p/4790695.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值