美文网首页
CSS3--伸缩布局

CSS3--伸缩布局

作者: 绚丽多彩的白 | 来源:发表于2020-08-29 15:05 被阅读0次

主轴

  • 在伸缩布局中,默认情况下水平方向是主轴,主轴的起点在在伸缩容器的最左边,所有的伸缩项都是从主轴的起点开始排版的
  • 但是我们也可以通过属性来修改主轴的起点和位置

flex-direction

  • 作用:用于修改主轴起点的位置
  • 语法:flex-direction: row|row-reverse|column|column-reverse;
  • 取值:
    • row:默认的取值
    • row-reverse: 从右至左的排版
    • column: 从上至下的排版
    • column-reverse: 从下至上的排版

justify-content

  • 作用:主轴对齐方式
  • 语法:justify-content:flex-start | flex-end | center | space-between | space-evenly;
  • 取值:
    • flex-start:主轴起点对齐(默认值)
    • flex-end:主轴终点对齐
    • center:主轴中点对齐
    • space-between:主轴两端对齐
    • space-around:主轴环绕
    • space-evenly:主轴平均分布

侧轴

  • 和主轴呈十字交叉

align-items

  • 作用:侧轴对齐方式
  • 语法:align-items: stretch | flex-start | flex-end | center | baseline;
  • 取值:
    • flex-start:起点对齐
    • flex-end:终点对齐
    • center:居中对齐
    • baseline:基线对齐
    • stretch:拉伸对齐/等高对齐 让所有的伸缩项的高度变为侧轴的高度(默认值)
  • 注意点:
    • 如果需要设置为拉伸对齐, 那么伸缩项不能设置高度(否则无效)

align-self

  • 作用:伸缩项对齐方式
  • 语法:和侧轴对齐一样
  • 取值:和侧轴对齐一样
  • 注意点:
    • align-items是控制伸缩容器里所有的伸缩项,写在伸缩容器中
    • align-self是控制单个伸缩项,写在伸缩项中

换行和对齐

  • 默认情况下如果伸缩容器的一行放不下所有的伸缩项, 那么系统会自动等比压缩所有的伸缩项
    在伸缩容器中有一个叫做flex-wrap属性, 专门用于控制放不下是否需要换行的

flex-wrap

  • 作用:是否换行
  • 语法:flex-wrap: nowrap;
  • 取值:
    • nowrap 默认取值
    • wrap 超出部分换行
    • wrap-reverse: 超出部分换行 , 以为单位进行反转

align-content

  • 作用:专门用于设置换行之后的对齐方式的
  • 语法:align-content: stretch | flex-start | flex-end | center | space-between | space-around;
  • 取值:
    • stretch 以行为单位进行拉伸, 拉伸的部分以空白填充(默认值)
    • flex-start:换行后和侧轴起点对齐
    • flex-end:换行后和侧轴终点对齐
    • center: 换行之后和侧轴的中点对齐
    • space-between:换行之后在侧轴上两端对齐
    • space-around:换行之后在侧轴上环绕对齐
  • 注意点:
    • 只有伸缩项发生了换行这个属性才有效

伸缩项

  • 伸缩容器中的元素为伸缩项

order

  • 作用:默认情况下每一个伸缩项都有一个order属性, 用于决定排序的先后顺序
  • 语法:order:0;
  • 取值:正负数
  • 排序规则:从小到大的排序, 越小的显示在越前面, 越大的显示在越后面

flex-grow

  • 作用:用于控制当所有伸缩项的宽度总和小于伸缩容器宽度的时候如何扩充自己
  • 语法:flex-grow:0;
  • 取值:数值;
  • 计算公式:
    1.利用伸缩容器宽度 - 所有伸缩项的宽度 = 剩余空间
    2.利用剩余空间 / 所有需要扩充份数的总和 = 每一份的大小
    3.利用当前伸缩项的宽度 + 需要的份数的宽度
  • 注意点:只有当所有伸缩项的宽度总和小于伸缩容器宽度的时候flex-grow这个属性才有效

flex-shrink

  • 作用:用于控制当所有伸缩项的宽度总和大于伸缩容器宽度的时候如何缩小自己

  • 语法: flex-shrink:1;

  • 取值:数值;

  • 计算公式:

  • 注意点:只有当所有伸缩项的宽度总和大于伸缩容器宽度的时候flex-shrink这个属性才有效


  • 注意点:扩充和缩小是按照主轴方向进行的

flex-basis

  • 作用:伸缩项宽度设置
  • 语法:flex-basis:0;
  • 取值:
    • 数值
    • auto
  • 注意点:flex-basis 只有在伸缩布局中才有效
  • 注意点:
    1.利用所有伸缩项的宽度总和 - 伸缩容器宽度 = 溢出的宽度
    2.利用每一个伸缩项需要的份数 * 当前伸缩项的宽度 然后再相加
    3.溢出的宽度 * 当前伸缩项的宽度 * 当前伸缩项需要的份数 / 权重值

flex

  • 作用:连写flex-grow flex-shrink flex-basis
  • 语法:flex:flex-grow flex-shrink flex-basis;
  • 取值:flex: 0 1 auto;

相关文章

  • CSS3--伸缩布局

    主轴 在伸缩布局中,默认情况下水平方向是主轴,主轴的起点在在伸缩容器的最左边,所有的伸缩项都是从主轴的起点开始排版...

  • 17-CSS伸缩布局

    伸缩布局 如何使用伸缩布局?只需要给元素设置 display: flex;属性 伸缩布局分类伸缩容器: 给哪个元素...

  • CSS伸缩布局

    伸缩布局(弹性布局) display:flex 给谁添加了display:flex,谁就是伸缩容器 伸缩容器中的盒...

  • 移动WEB flex 布局

    一、简介 又名伸缩布局、弹性布局、伸缩盒布局、 更适用于移动端 布局原理,添加display: flex; 父盒设...

  • 第10章 布局样式相关-伸缩布局(Flexible Box)

    伸缩布局(一) CSS3引入了一种新的布局模式——Flexbox布局,即伸缩布局盒模型(Flexible Box)...

  • day06-css3-demo

    伸缩布局demo:

  • CSS3之Flexbox布局在ReactNative的应用

    CSS3为我们提供了一种可伸缩的灵活的web页面布局方式-flexbox布局,被成为弹性布局(或者伸缩布局)。相比...

  • flexbox

    flexbox flexbox布局是伸缩容器(container)和伸缩项目组成(item)布局的主题思想是元素可...

  • 伸缩布局

    flex Container 伸缩容器(外层div) main axis 主轴,横向的轴,x轴,起点和终点之间的距...

  • 伸缩布局

    display: flex (父盒子设置为弹性布局) flex-direction: column (调整主轴方向...

网友评论

      本文标题:CSS3--伸缩布局

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