06.伸缩布局 flex

1.伸缩布局(t弹性布局): 本质就是给盒子加buff,专治不服:百分比+浮动实现比较麻烦的需求
如何使用: 设置盒子display 为flex
2.伸缩布局三要素
子元素:住户
主轴:住户排列方式(默认水平)
次轴:阳台方向
/* 伸缩盒子(弹性布局) */
display: flex;
1.主轴方向:元素排列方式
主轴与次轴一定是垂直的,如果你把主轴方向变成垂直,次轴方向自动变成水平
注意点:
主轴: 如果子元素总宽度 > 伸缩盒子宽度,不会超出,flex盒子会自动合理按照比例分配宽度
次轴: 可以超出flex盒子

主轴:


   /* 默认:从左往右 */
        flex-direction: row;
        /* 从右往左 */
        /* flex-direction: row-reverse; */
        /* 从上往下 */
        /* flex-direction: column; */
        /* 从下往上 */
        /* flex-direction: column-reverse; */

2.主轴对齐方式

/* 默认:从左往右 */
            flex-direction: row;

            /* 2.主轴方向的对齐方式 */

            /* a.默认值: 左对齐 */
            justify-content: flex-start;
            /* b.右对齐 */
            justify-content: flex-end;
            
            /* c.居中对齐 */
            justify-content: center;
            /* d.两端对齐 */
            justify-content: space-between;
            /* e.间距相等: 中间的间距是边缘的两倍 */
            justify-content: space-around;
            

3.次轴方向的对齐方式


            /* a.默认值:高度平铺100%  子元素不能设置高度 */
            align-items: stretch;
            /* b.上对齐 */
            /* align-items: flex-start; */
            /* c.下对齐 */
            /* align-items: flex-end; */
            /* d.居中对齐 */
            /* align-items: center; */
            /* e.文字基线对齐 */
            /* align-items: baseline; */

4.主轴换行方式

/* 4.允许换行:只有子元素总宽度 > 父元素宽度 */

            /* 默认:不允许换行 */
            flex-wrap: nowrap;
            /* 允许换行 */
            flex-wrap: wrap;
            /* 反向换行: 倒着换行 */
            flex-wrap: wrap-reverse;

5.多行对齐方式


                a.这个属性只有多行的时候才有效(一行无效)
                b.默认换行之后,行之间会有默认间距,这个属性就是设置这个间距的
            */
            /* 上对齐 */
            align-content: flex-start;
            /* 下对齐 */
            align-content: flex-end;
            /* 居中对齐 */
            align-content: center;
            /* 两端对齐 */
            align-content: space-between;
            /* 间距相等 */
            align-content: space-around;
            /* 默认平铺 */
            align-content: stretch;

6.元素的 flex属性
!!!注意:设置了flex,设置宽度没用

     

        .box1{
            /* 1flex = 父元素宽度 / 子元素总flex
            注意:设置了flex,设置宽度没用
            */
            background-color: red;
            flex: 2;/* 子元素宽度比例:切蛋糕 */
        }

        .box2{
            background-color: green;
            flex: 1;
            width: 100px;/* 无效 */
        }

        .box3{
            background-color: hotpink;
            width: 100px;
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值