美文网首页
flex 布局

flex 布局

作者: 缘之空_bb11 | 来源:发表于2024-05-09 16:41 被阅读0次

Flex 布局学习

1. flex-direction 主轴方向
2. flex-wrap 主轴一行满了换行
3. flex-flow 1和2的组合
4. justify-content 主轴元素对齐方式
5. align-items 交叉轴元素对齐方式(单行)
6. align-content 交叉轴行对齐方式(多行)

Flex 原理: 意为“弹性布局”,通过给父盒子添加Flex属性,来控制子盒子的位置和排序
注意:是给父类添加 dispaly: flex, 来控制其内的子控件的位子和顺序

主轴和侧轴: 默认情况下X轴位主轴,Y轴位侧轴, 在布局是主轴是可以设置的,另外一个则是侧轴;

主轴布局:

  • flex-direction: column; 用来指定主轴的方向
  • justify-content: flex-start; 用来设置主轴方向上的排列布局(只是主轴,不会改变方向)

侧轴布局:

  • 单行 align-items: flex-start; 用来设置侧轴方向上的排序, 与 justify-content 相对应
  • 多行 align-content: 会将多行合并到一块,形成一个整体,并进行 [整体] 的排列

侧轴某个单独布局:

  • align-self: 控制某一个子项自己在侧轴的排列方式, 需要配合 nth-child 一起使用.
    注意: 使用align-self的属性时, 会使元素的宽高变成自适应,不会拉伸

换行布局: flex-wrap: wrap;

  • Nowarp 默认不换行(子控件自适应修改控件的宽度,在一行上显示)
  • warp 换行(第二行排列开始位子是将剩余空间平分)

对剩余空间进行分配: flex: 1;

  • flex: 属性定义子项目 分配剩余空间, 用 flex 来表示 多少份数


flex-direction 设置主轴方向:

Row                        默认从左到右为主轴方向,即X轴
row-reverse                从右到左
Colunm                     从上到下
Colunm-reverse             从下到上

justify-Content 设置主轴上的子元素排列方式:

Flex-start                  默认值从头部开始,如果是主轴是X轴,则从左到右
Flex-end                    从尾部开始排列
Center                      在主轴居中对齐(如果是主轴是X轴,则水平居中)
Space-around                平均分配剩余空间(注意是剩余空间)
Space-between               先两边贴边,在平分剩余空间(重要)

Flex-wrap 设置子元素是否换行:

Nowarp                      默认值,不换行
warp                        换行   

Align-itmes 设置侧轴上的子元素排列方式(单行):

注意: 用来设置侧轴方向上的排序, 与 justify-content 相对应

flex-start                 默认值,从上到下
flex-eng                   从下到上
Center                     挤在一起居中(垂直居中)    ”垂直居中其实就是先在水平主轴X上居中,然后再侧轴Y上居中,两者结合就成了垂直居中“
Stretch                    拉伸

Align-content 设置侧轴上的子元素的排列方式(多行)

注意: 会将多行合并到一块,形成一个整体,并进行 [整体] 的排列

Flex-start             默认在侧轴的头部开始排列
Flex-end               在侧轴的尾部开始排列
Center                 在侧轴中间显示
Space-around           子项在侧轴平分剩余空间
Spce-between           子项在侧轴先分布在两头,在平分剩余空间
Strech                 设置子项元素高度平分父元素的高度

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

例如: flex-flow: column wrap      设置主轴方向和是否换行的简写 

Flex布局子项常见的属性:(主轴的):

  • Flex子项目占的份数(分配剩余空间,用flex表示占多少份数),默认为0;
    示例: 经典的导航栏搜索控件自适应,左边一份固定,右边一份固定,中间的自适应 flex: 1 ; nth-child(2); flex: 1

  • align-self 控制子项自己在【侧轴】的排列方式(默认为auto)允许单个项目有与其他项目不一样的对齐方式,可覆盖aligin-items属性
    示例: 只让3号盒子下来。
    需要说明的 align-items 与 align-self 的关系, 容器内的所有元素都一致受制于align-items的值, 而align-self只用来控制该容器中的某一个元素
    align-self 使用时,会使该元素的宽高变成自适应,不在延伸

    参考示例

  • order定义子项的排列顺序(前后顺序) 数字越小越靠前,默认为0。
    示例: (1,2,3 改为 2,1,3 )

相关文章

  • flex布局

    认识flex布局 flex布局(Flexible 布局,弹性布局)开启了flex布局的元素叫flex contai...

  • 初见FLEX

    FLEX布局 一种新的布局方式,flex布局 flex布局与方向无关 flex布局可以实现空间自动分配、自动对齐。...

  • Flex 布局教程

    一、Flex 布局教程:语法篇 Flex 布局教程:语法篇 二、Flex 布局教程:实例篇 Flex...

  • css flex布局详解

    css flex布局详解 css flex布局详解1css flex布局详解2

  • Flex

    阮一峰-Flex布局 阮一峰-Flex布局实例教程 Flex布局 块级元素 行内元素 注意,设为 Flex 布局...

  • flex布局学习笔记

    经典教程 Flex 布局教程:语法篇Flex 布局教程:实例篇flex布局游戏 理解 flex布局实现需要至少两层...

  • 6Flex 布局

    Flex,(Flexible Box),意为"弹性布局"采用 Flex 布局的元素,为 Flex 容器(flex ...

  • css flex

    css flex布局 采用 Flex 布局的元素,称为 Flex 容器(flex container),简称“容器...

  • Flex布局(语法篇)

    一、介绍Flex布局 什么是Flex布局呢?Flex布局:又称弹性布局,它是Flexible Box 的缩写,它为...

  • Day02_flex布局

    一、flex布局介绍: 1、又名Flexible 布局,弹性布局;2、开启了 flex 布局的元素叫 flex c...

网友评论

      本文标题:flex 布局

      本文链接:https://www.haomeiwen.com/subject/melsfjtx.html