flex布局

1、flex布局(弹性布局)
1.1特点

浏览器提倡的布局模型;避免浮动脱标的问题;

1.2构成

设置方式:父元素添加 display:flex;
组成部分:弹性容器(父元素),弹性盒子,主轴(X),侧轴/交叉轴(Y)

1、主轴对齐方式 justify_content:start/end/center/space_around/space-between/space-evenly(起、中、终、space-)

.box{
            /* 给父元素添加flex,让多个元素一行排列 */
            display: flex;
            /*1. justify-content默认起点到指点 */
            justify-content: start;
            /* 2.从站点依次排列 */
            justify-content: end;
            /* 3.沿主轴居中 */
            justify-content: center;
            /* 4.间距均分盒子两测 */
            justify-content: space-around;
            /* 4.第一次和最后一个两侧排列,中间均分 */
            justify-content: space-between;
            /* 5.所有间距均分 */
            justify-content: space-evenly;
            /* 默认主轴方向是从左到右 */
            /* 多个块级元素默认顶端对齐 */
            /* 内部弹性盒子不会脱标,父元素能够正常检测,且弹性容器的宽度依旧是父级的百分百 */
        }

2、侧轴对齐方式align-items:stretch(默认)、上、中、下;
单个align-self(值相同)

   .box {
            display: flex;
            /* 侧轴对齐方式align-items */
            /* 1、默认值strerch 拉伸:如果弹性盒子没有高度,默认铺满父容器高度 */
            align-items: stretch;
            /* 2、从起点开始 */
            align-items: flex-start;
            /* 3、从终点开始 */
            align-items: flex-end;
            /* 4、沿侧轴居中排列 */
            align-items: center;

        }

3、注意点
行内元素变成弹性盒子后,自身没有高度时,铺满父容器高度;可以直接设置大小;
把行内元素变成弹性容器时,可以直接设置大小;
4、伸缩比 flex:整数;(只占用父盒子剩余尺寸的分数)
flex伸缩比常用布局格式:左中右格式,中间占剩余

 .box{
            display: flex;
            justify-content: space-between;
            width: 500px;
            height: 200px;
            margin: 100px auto;
            background-color: aqua;
        }
        .son1{
            width: 100px;
            height: 100px;
            background-color: red;
        }
        .son3{
            width: 100px;
            height: 200px;
            background-color: #556;
        }
        .son2{
            flex: 1;
            background-color: blue;
        }

在这里插入图片描述
5、改变主轴对齐方向 flex-direction: column

 display: flex;
            /* 1、默认值,不用加 */
            flex-direction: row;
            /* 2、水平主轴翻转  不常用*/
            flex-direction: row-reverse;
            /* 3、把主轴改为从上到下 */
            flex-direction: column;
            justify-content: space-between;
            /* 4、翻转从下到上  不常用*/
            flex-direction: column-reverse;

6、用flex实现多个盒子排列

flex-wrap: wrap; 
/* 换行后多了一个行与行的概论,可以使用align-content:去控制 */
align-content: flex-start;

7、flex实现盒子水平居中,里面内容列(ul>li*5)
加了flex后会脱标,记得加宽
ul{1、display:flex;2、justify-content:space-between; 3、align-items:center}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Flex布局(也称为弹性布局)是种主流的CSS布局方式,它可以方便地实现页面元素的自适应和排列。Flex布局通过定义容器和子元素的属性来实现灵活的布局效果。 在Flex布局中,有两个重要的概念:容器和子元素。容器是指应用Flex布局的父元素,而子元素则是容器内部的直接子元素。 以下是Flex布局的一些主要特点和属性: 1. 容器属性: - display: flex;:将容器设置为Flex布局。 - flex-direction:指定主轴的方向,可以是row(水平方向)、column(垂直方向)、row-reverse(水平反向)或column-reverse(垂直反向)。 - justify-content:定义了子元素在主轴上的对齐方式,可以是flex-start(起始对齐)、flex-end(末尾对齐)、center(居中对齐)、space-between(两端对齐,项目之间间隔相等)或space-around(每个项目两侧的间隔相等)。 - align-items:定义了子元素在交叉轴上的对齐方式,可以是flex-start(起始对齐)、flex-end(末尾对齐)、center(居中对齐)、baseline(基线对齐)或stretch(拉伸对齐)。 - flex-wrap:定义了子元素是否换行,可以是nowrap(不换行)、wrap(换行)或wrap-reverse(反向换行)。 2. 子元素属性: - flex:指定子元素的伸缩比例,用于控制子元素在容器中的占比。 - align-self:定义了单个子元素在交叉轴上的对齐方式,可以覆盖容器的align-items属性。 以上是Flex布局的一些基本概念和属性,通过灵活地使用这些属性,可以实现各种不同的布局效果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值