当前位置: 首页 > news >正文

css3之flex布局

flex布局要牢记的两个知识点:

  1. 开启了flex布局的元素叫flex container
  2. flex container里面的直接子元素叫flex items
    这两点要记牢,设置属性的时候才不会搞混

    这个是flex布局的整体图

一、flex container上的属性

1.flex-direction

修改主轴方向的属性,flex items默认都是沿着main axis(主轴)从main start开始往main end方向排布

<template><div class="container"><div class="item item1">item1</div><div class="item item2">item2</div><div class="item item3">item3</div></div>
</template><script lang="ts" setup></script><style lang="scss" scoped>
.container {width: 600px;height: 600px;background-color: red;display: flex; //开启弹性布局/**改变主轴方向,可选值有row(默认值) 从左到右row-reverse 从右到左column 从上到下column-reverse 从下到上*/flex-direction: column-reverse;.item {width: 100px;height: 100px;color: #000;text-align: center;}
}
</style>
2.justify-content

justify-content决定了flex items在main axis(主轴)上的对齐方式

  • flex-start(默认值):与main star对齐
  • flex-end:与main end 对齐
  • cener:居中对齐
  • space-between:flex items之间的距离相等,与main start、main end两端对齐
  • space-evenly:flex items之间的距离相等,flex items与main start、main end之间距离等于flex items之间的距离
  • space-around:flex items之间的距离相等,flex items与main start、main end之间距离等于flex items之间的距离的一半
<style lang="scss" scoped>
.container {width: 600px;height: 600px;background-color: red;display: flex; //开启弹性布局/**改变主轴方向,可选值有row(默认值) 从左到右row-reverse 从右到左column 从上到下column-reverse 从下到上*/flex-direction: column-reverse;justify-content: space-evenly;
}
</style>
3.align-items

决定了某一行flex items在cross axis上的所占空间里的对齐方式,主要是多行的时候有影响,这里先不管,当单行理解

  • stretch:当flex items在cross axis方向的size为auto时(也就是没有设置高度,也可能是没有设置宽度,看交叉轴方向),会自动拉伸至填充flex container
  • normal:在弹性布局中,效果和stretch一样
  • flex-start:与 cross start对齐
  • flex-end:与cross end对齐
  • center:居中对齐
  • baseline:与基准线对齐
4. flex-wrap

默认情况下,所有的flex items都会在同一行显示

  • nowrap(默认值):一行显示
  • wrap:换行显示
  • wrap-reverse:换行显示且在交叉轴上反转排列
5.flex-flow

flex-direction和flex-wrap的缩写

6.align-content

决定了多行flex items在cross axis上的对齐方式,用法与justify-content类似

  • stretch(默认值):与align-items的stretch类似
  • flex-start:与cross star对齐
  • flex-end:与cross end 对齐
  • cener:居中对齐
  • space-between:flex items之间的距离相等,与cross start、cross end两端对齐
  • space-evenly:flex items之间的距离相等,flex items与cross start、cross end之间距离等于flex items之间的距离
  • space-around:flex items之间的距离相等,flex items与cross start、cross end之间距离等于flex items之间的距离的一半

二、flex items上的属性

1.order

决定了flex items的排布顺序

  • 可以设置任意整数(正整数、负整数、0),值越小就越排在后面
  • 默认值是0
2.align-self

用于覆盖flex container设置的align-items属性

  • auto(默认值):遵从flex container的align-items设置
  • 可自行设置align-items中的值
3.flex-glow

决定了如何分配main size剩余的空间

  • 可以设置任意非负数字(正小数、正整数、0),默认值是0
  • 如果所有flex items的flex-grow总和超过1,每个flex item按比例分配剩余空间
  • 如果总和不超过1,那么分配的空间就是剩余空间 * flex-grow
  • 最终大小不能大于max-width\max-height
4.flex-shrink

设置当一行显示不下,并且设置flex-wrap:nowarp时,每一个flex items该如何收缩

  • 可以设置任意非负数字(正小数、正整数、0),默认值是1
  • 如果所有flex items的flex-shrink总和超过1,每个flex item按比例收缩
  • 如果总和不超过1,那么收缩的空间就是超出空间 * flex-shrink
  • 最终大小不能小于min-width\min-height
5.flex-basis

用于设置flex items在主轴方向上的base size

  • auto(默认值)
  • 具体的宽度值
  • 决定flex items的最终大小的因素,优先级从高到低
  1. max-width\max-height\min-width\min-height
  2. flex-basis
  3. width\height
  4. 内容本身的size
6.flex

flex-grow、flex-shrink、flex-basis的简写
在这里插入图片描述

http://www.xdnf.cn/news/1359361.html

相关文章:

  • Linux 学习笔记 - 集群管理篇
  • 音视频学习(五十五):H264中的profile和level
  • pyecharts可视化图表-scatter:从入门到精通
  • Trip Footprint旅行足迹App
  • jar包项目自启动设置ubuntu
  • Vue中 this.$emit() 方法详解, 帮助子组件向父组件传递事件
  • Altium Designer 22使用笔记(9)---PCB布局、布线操作
  • 复杂街景误检率↓79%!陌讯时空建模算法在非机动车乱停放检测的实战解析
  • 点播视频预览是怎么做到的?
  • VsCode使用SFTP连接Linux
  • 使用 Golang 的 Gin 框架实现一周极限编程计划:全网 AIGC 项目热点追踪应用
  • MATLAB 与 Simulink 联合仿真:控制系统建模与动态性能优化
  • yggjs_rlayout框架v0.1.2使用教程 02 TechLayout 布局组件
  • 上科大解锁城市建模新视角!AerialGo:从航拍视角到地面漫步的3D城市重建
  • nginx部署goaccess监控
  • 【C语言强化训练16天】--从基础到进阶的蜕变之旅:Day12
  • leetcode 1493 删掉一个元素以后全为1的最长子数组
  • mybatis过渡到mybatis-plus过程中需要注意的地方
  • 《Distilling the Knowledge in a Neural Network》论文PDF分享, 2015 年,谷歌提出了 “知识蒸馏” 的概念
  • 06 - spring security角色和权限设置
  • vulnhub-billu_b0x靶机渗透
  • GPT-5国内免费体验
  • k8s下的网络通信之calico与调度
  • sqlite创建数据库,创建表,插入数据,查询数据的C++ demo
  • 最新sa-token的oauth2封装免密和密码登录
  • 【高等数学】第十章 重积分——第一节 二重积分的概念与性质
  • MinIO03-Linux安装
  • Docker安装RocketMQ
  • 征程 6X 常用工具介绍
  • AI大模型应用开发面试:深入解析技术点