flex-grow 和flexbasis 怎么感觉有点类似都可以平分?

flex-grow 和flexbasis 怎么感觉有点类似都可以平分?

flex-grow 和flexbasis 怎么感觉有点类似都可以平分? 有啥区别 有点不明白

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
提问者 陈立天 2020-08-23 11:32:18

老师怎么一下回复了那么多条重复的

  • 同学你好,由于网络问题导致重复提交了多次,非常抱歉给同学造成不好的学习体验,已经做了处理,同学可以查看下,祝学习愉快~
    2020-08-23 16:03:48
好帮手慕慕子 2020-08-23 10:19:45

同学你好,对于你的问题解答如下:

  1. flex-grow 可以实现均分效果,flex-basis是设置元素的伸缩的基准值, 两者的是不同的概念。

    (1)flex-grow:用于设置或检索弹性盒子的扩展比率。简单理解就是:根据父元素在空间分配方向上还有剩余空间时,设置图和分配这些剩余空间

    示例:当只给弹性盒子设置flex-grow属性,默认会均分父元素剩余的空间。

    http://img1.sycdn.imooc.com//climg/5f41cc720979fc8206060745.jpg

    http://img1.sycdn.imooc.com//climg/5f41ccf30939cc6212340225.jpg

    (2)flex-basis:属性用于设置或检索弹性盒伸缩基准值。简单理解就是设置弹性盒子占据的空间。示例:设置flex-basis的值,那么每个盒子默认占据的空间就是200px,并不会均分父元素的空间。

    http://img1.sycdn.imooc.com//climg/5f41cd8a0983066605640782.jpg

    效果图:

    http://img1.sycdn.imooc.com//climg/5f41cdaf09382b8d12530226.jpg

  2. flex:1; 是flex: 1 1 0%;的缩写;可以通过控制台查看元素获取,如下图所示:

    http://img1.sycdn.imooc.com//climg/5f41d0620994237903040175.jpg

    flex: auto; 是flex: 1 1 auto;的缩写。

    http://img1.sycdn.imooc.com//climg/5f41d04009cf478d03220126.jpg

    0%和auto对应的是flex-basis属性,均分父元素是flex-grow属性起的作用

    auto和0%之间的区别,具体可以参考如下解析:

    (1)flex:auto;的情况

    http://img1.sycdn.imooc.com//climg/5f41cedb0925b55a05740844.jpg

    效果图:每个项目文字到项目边界之间的距离是相等的

    http://img1.sycdn.imooc.com//climg/5f41cf1d09a96f2118670108.jpg

    (2)设置flex:1;后, 效果图如下所示, 每个项目占据的空间是相等的

    http://img1.sycdn.imooc.com//climg/5f41cf3d091b196818670152.jpg


  3. flex-basis的默认值是auto。

    由第二条分析可知,均分父元素剩余空间是flex-grow属性起的作用,flex-basis设置的是每个弹性盒子占据空间的方式,所以说不影响是否沾满父元素,而是设置弹性盒子的占据的空间大小。

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

提问者 陈立天 2020-08-23 08:55:17
提问者 陈立天 2020-08-23 08:52:46

还有个问题12:06-12:19 没有听明白


flex:1 是flex:1 1 0%的缩写  那第三个参数0% 和auto有什么联系?  哪个参与平分并填满父元素容器, 哪个不参与平分并不填充父元素容器?

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
3.WebAPP开发与小程序
  • 参与学习           人
  • 提交作业       622    份
  • 解答问题       6815    个

微信带火了小程序,也让前端工程师有了更多的展现机会,本阶段带你从移动基础知识的学习到webAPP开发,及小程序开发,让你PC端与移动端两端通吃。

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师