flex布局需要知道些什么

主轴与侧轴


在flex布局中,是分为主轴和侧轴两个方向,同样的叫法有:行和列、x轴和y轴

  • 默认主轴方向就是x轴方向,水平向右

  • 默认侧轴方向就是y轴方向,垂直向下

  • flex-direction属性决定主轴的方向(即项目的排列方向)

  • 注意:

    • 主轴和侧轴是会变化的,就看flex-direction设置谁为主轴,剩下的就是侧轴。

    • 我们的子元素是根据主轴来排列的

| 属性值 | 解释说明 |

| — | — |

| row | 默认值、从左到右 |

| row-reverse | 从右到左 |

| column | 从上到下 |

| column-reverse | 从下到上 |


.box {

  display: flex;

  ...

  flex-direction: row;

}



justify-content — 设置主轴上子项目对齐

======================================================================================

  • justify-content 属性定义了项目在主轴上的对齐方式

  • 注意:

    • 使用这个属性之前,一定要确认好主轴是哪个

| 属性值 | 解释说明 |

| — | — |

| flex-start | 默认值、从头部开始 如果主轴是X轴,则从左到右 |

| flex-end | 从尾部开始排列 |

| center | 在主轴居中对齐(如果主轴是X轴则水平居中) |

| space-around | 平分剩余空间 |

| space-between | 先两边贴边 在平分剩余空间(重要) |


.box {

  display: flex;

  ...

  justify-content: flex-start;

}



flex-wrap — 设置子项目是否换行

===============================================================================

  • 默认情况下,项目都排在一条线(又称“轴线”)上

  • flex-wrap属性定义,flex布局中默认是不换行的

| 属性值 | 解释说明 |

| — | — |

| nowrap | 默认值,不换行 |

| wrap | 换行 |


.box {

  display: flex;

  ...

  flex-wrap: wrap;

}



align-items — 设置侧轴单行子项目对齐

===================================================================================

  • 该属性是控制子项在侧轴(默认是y轴)上的排列方式

  • 在子项为单项(单行)的时候使用

| 属性值 | 解释说明 |

| — | — |

| flex-start | 默认值,从上到下 |

| flex-end | 从下到上 |

| center | 挤在一起居中(垂直居中) |

| stretch | 拉伸 |


.box {

  display: flex;

  ...

  align-items: center;

}



align-content — 设置侧轴多行子项目对齐

=====================================================================================

  • 设置子项在侧轴上的排列方式,并且只能用于子项出现换行的情况,在单行下是没有效果的

| 属性值 | 解释说明 |

| — | — |

| flex-start | 在侧轴的头部开始排列 |

| flex-end | 在侧轴的尾部开始排列 |

| center | 在侧轴的中间显示 |

| stretch-around | 子项在侧轴平分剩余空间 |

| stretch-between | 子项在侧轴先分布在两头,在平分剩余空间 |

| stretch | 设置子项元素高度平分父元素高度 |


.box {

  display: flex;

  ...

  align-content: stretch;

}



align-content和align-items区别


  • align-items适用于单行情况下,只有上对齐、下对齐、居中和拉伸

  • align-content适应于换行(多行)的情况下(单行对齐无效),可以设置上对齐、下对齐、居中、拉伸以及平均分配剩余空间等属性值

  • 总结就是单行找align-items多行找align-content

flex-flow — 复合属性

==========================================================================

  • flex-flow属性是flex-direction和flex-wrap属性的复合属性

.box {

  display: flex;

  ...

  flex-flow:row nowrap;

}



flex设置子项的份数

=====================================================================

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
1714858003569)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值