项目属性的问题

项目属性的问题

flex-grow

flex-shrink

flex-basis

感觉 这三个属性 都能无视将原本 Flex项目 的 width 属性,即比如说原本 width:200px, 但是设置上面的属性之后 可能会被放大或 缩小 或 被拉长,我这样理解对吗

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

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

1回答
好帮手慕久久 2023-03-26 16:37:55

同学你好,是的。使用这三个属性后,flex中的项目会根据实际情况结合各自的属性值,自动计算尺寸,此时可能会突破width属性的限制,导致width属性值失效。

这三个值单独使用的场合不多,不用过于关注,简单了解就行,重点记住flex:1;这个复合属性的用法就行了。

祝学习愉快!

  • flex:1 是什么意思?

    2023-03-29 16:37:26
  • 解答如下:

    1、flex:1是flex:1 1 0%;的缩写,意思是元素占满剩余空间,比如下面的例子:

    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            .container{
                display: flex;
            }
            .left{
                width: 200px;
                background-color: aqua;
            }
            .right{
                width: 400px;
                background-color: azure;
            }
            .middle{
                background-color: pink;
                flex: 1;
            }
        </style>
    </head>
    <body>
        <div class="container">
            <div class="left">我是左侧</div>
            <div class="middle"></div>
            <div class="right">我是右侧</div>
        </div>
    </body>
    </html>

    该例子中,左右元素的宽度是固定的,但是父元素宽度不固定。那么flex:1的作用就是让.middle占满父元素中,除了左右元素之外的剩余空间,比如:

    6405bfe709819da019200320.jpg (1920×320)

    这样可以实现宽度自适应。

    后面的flex实战中,用到了该属性,可以往后继续学。

    2023-03-29 17:05:23
  • 为什么 0% 就是代表占满?

    2023-03-29 22:16:03
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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