flex简介及其常见布局方式

本文详细介绍了CSS Flex布局,包括伸缩容器与伸缩项目的概念、主轴与侧轴设置、伸缩项目排列与分配空间的规则,以及解决浏览器兼容性和常见布局的应用。通过实例展示了Flex在两列布局、定宽布局、三列布局和等比布局等场景中的应用,以及实现水平垂直居中等复杂布局技巧。
摘要由CSDN通过智能技术生成

flex

简介

  • 为元素设置display: flex或者 display: inline-flex
    该元素即成为伸缩容器(flex container),
  • 设置为flex ,该元素会独占一行
  • 设置为 inline-flex,可以与其他 inline 元素在同一行。
  • 此时伸缩容器的子元素自动升级为伸缩项目(flex item),伸缩项目的的特点如下,
    • 伸缩项目默认在一行排列。
    • 自动升级为块元素。
    • 所有伸缩项目默认在主轴的 start 处排列。
    • 伸缩项目也可以再次设置为flex,即flex可以互相嵌套。
  • inline-flex 行内对齐特点
    • 伸缩容器中有文本内容,基于第一个文本的基线对齐.
    • 伸缩容器中没有有文本内容,也没有子元素,伸缩容器底边位于一行的基线处。
    • 伸缩容器中没有有文本内容,第一个子元素没有,第一个元素底边位于一行的基线处。

伸缩容器有足够空间伸缩项目排列

  • 当伸缩容器主轴方向上有“足够空间”时
    • justify-content: flex-start; 项目位于容器的开头 (默认值)
    • justify-content: flex-end; 项目位于容器的结尾
    • justify-content: center; 项目位于容器的中心
    • justify-content: space-between; 项目沿着伸缩容器的主轴均匀分布
    • justify-content: space-around; 项目沿着伸缩容器的主轴均匀分布,但是剩余空间会包裹着每个伸缩项目
  • 当伸缩容器侧轴有“足够空间”时
    • align-items: stretch; 每个伸缩项目会沿侧轴被拉伸。(默认值)
    • align-items: center; 所有伸缩项目位于伸缩容器侧轴中部
    • align-items: flex-start; 所有伸缩项目位于伸缩容器侧轴start处
    • align-items: flex-end; 所有伸缩项目位于伸缩容器侧轴end处
    • align-items: baseline; 主轴中伸缩项目基线最大的那个伸缩项目的基线作为所有伸缩项目的对齐基线

伸缩容器空间不足(flex-wrap: 属性规定灵活项目是否拆行或拆列)

  • 当设置伸缩项目大小,且伸缩容器无法在主轴方向上容纳所有的伸缩项目时
    • flex-wrap: nowrap; 每个伸缩项目都会被按比例被压缩(默认值)
    • flex-wrap: wrap; 让伸缩项目自动换行,保持原来的大小,且排列方向为从上往下,从左往右排列(flex-start方向开始)
    • flex-wrap: wrap-reverse; 让伸缩项目自动换行,保持原来的大小,且排列方向为从下往上,从左往右排列(flex-end方向开始)

主轴及侧轴相关设置

  • 主轴方向(flex-direction: 属性规定灵活项目的方向)
    • flex-direction: row; 水平从左到右(默认值)
    • flex-direction: row-reverse; 水平从右到左
    • flex-direction: column; 竖直从上到下
    • flex-direction: column -reverse; 竖直从下到
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zarek⠀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值