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

Flexbox

🧩 一、什么是 Flexbox

Flexbox 全称是 Flexible Box Layout(弹性盒子布局)。

👉 它是一种 一维布局模型,用于在一行或一列上高效地排列、对齐和分配空间。

用一句话说:
Flexbox 让你可以很轻松地让元素水平垂直居中、自动对齐、按比例分布,而不用写很多复杂的 float、position 或 margin。

二、基本结构

一个 Flex 布局至少包含两部分:

<div class="container"><div class="item">1</div><div class="item">2</div><div class="item">3</div>
</div>
.container {display: flex; /* 关键!让这个容器成为弹性盒子 */
}

三、Flexbox 的两条轴线

Flexbox 的所有对齐、方向都基于两条轴:

主轴(main axis):默认是水平方向(从左到右)

交叉轴(cross axis):垂直方向(从上到下)

可以通过 flex-direction 改变主轴方向。

.container {display: flex;flex-direction: row; /* row | row-reverse | column | column-reverse */
}

四、常用属性汇总

1. 容器属性(作用于父元素)

属性作用
display: flex开启弹性布局
flex-direction主轴方向(横排或竖排)
flex-wrap是否换行
justify-content主轴对齐(左右分布)
align-items(一行)交叉轴对齐(上下分布)
align-content(多行)多行内容在交叉轴的分布
flex-flowflex-direction和flex-wrap合起来

align-items 和align-content

属性值含义效果示意
flex-start从主轴起点开始对齐(默认值)🔳🔳🔳□□□□
flex-end从主轴终点开始对齐□□□□🔳🔳🔳
center居中对齐□🔳🔳🔳□
space-between两端对齐,中间平均分配间距🔳—🔳—🔳
space-around每个元素两侧间距相等(首尾留一半空隙)½🔳—🔳—🔳½
space-evenly所有间距完全相等(包括首尾)🔳—🔳—🔳—🔳

示例:

.container {display: flex;justify-content: center;  /* 水平居中 */align-items: center;      /* 垂直居中 */
}

👉 这两行是 最常用的居中写法!

2. 项目属性(作用于子元素)

属性作用
flex-grow放大比例(多余空间怎么分配)
flex-shrink缩小比例
flex-basis初始大小
flex组合简写:flex: grow shrink basis;
align-self单独控制某个子项的对齐
order顺序 (… -1, 0 (default), 1, …)

align-self 的属性

属性值含义说明
auto默认值继承父容器的 align-items
flex-start顶部对齐(交叉轴起点)相当于“靠上”或“靠左”
flex-end底部对齐(交叉轴终点)相当于“靠下”或“靠右”
center居中对齐在交叉轴上居中
baseline文字基线对齐以文字底线对齐(常用于文本)
stretch拉伸填满(默认)如果项目未设置高度,会被拉伸以占满交叉轴空间

示例:

.item:nth-child(1) {flex: 1; /* 自动分配剩余空间 */
}
.item:nth-child(2) {flex: 2; /* 占的空间是前一个的两倍 */
}

五、几个典型布局案例

1. 元素水平垂直居中

.container {display: flex;justify-content: center;align-items: center;
}

2. 左右布局,中间自适应

.container {display: flex;
}
.left, .right {width: 200px;
}
.middle {flex: 1; /* 自动填满剩余空间 */
}

3. 平均分布(导航栏常用)

.nav {display: flex;justify-content: space-between;
}

六、Flexbox 的优点

✅ 简化布局逻辑(不用 float、position)
✅ 自适应能力强(响应式更容易)
✅ 居中对齐极其方便
✅ 动态分配空间

七、可视化学习推荐

你可以用这些工具 直观地练习 Flexbox:

🌐 Flexbox Froggy(游戏学 Flex)

🧩 CSS Tricks Flexbox 完整指南

🧱 Flexbox Visual Playground

http://www.dtcms.com/a/520435.html

相关文章:

  • `.bat`、`.cmd`、`.ps1`的区别
  • MySQL 安装教程(Windows 版):从入门到配置全流程
  • 网站建设责任分解杭州市建筑业协会官网
  • 【数据库】MySQL数据库基础
  • 四川省建设厅官方培训网站网站顶部
  • 图解Vue3 响应式,手动实现核心原理
  • 压缩与缓存调优实战指南:从0到1根治性能瓶颈(三)
  • 【设计模式】外观模式/门面模式(Facaed)
  • 矽塔 SA8206 36V/2.5A 过压/过流保护芯片
  • 莱州做网站网站建设给客户看的ppt
  • Windows - Maven 安装到 IDEA 配置全流程
  • java填充word模版导出word文件支持导出pdf,支持本地下载和网络下载,使用jar包
  • 网络安全:Apache Druid 安全漏洞
  • 宁波公司建站模板wordpress用户调用
  • 70%的RAG性能与分块有关
  • 足球网站开发外贸网站优化推广
  • Uncertainty-Aware Null Space Networks for Data-Consistent Image Reconstruction
  • 孝感网站seodw做网站的导航栏怎么做
  • LeetCode 每日一题 166. 分数到小数
  • 封面论文丨薄膜铌酸锂平台实现强耦合电光调制,《Light Sci. Appl. 》报道机器学习优化新范式
  • 做外贸找产品上哪个网站好flash素材网站有哪些
  • Rust内存安全:所有权与生命周期的精妙设计
  • 2510rs,稳定裸函数
  • 西安住房建设局网站首页企业网站 设计需求
  • LangChain:让大模型具备思考与行动能力的框架
  • MySQL 及 SQL 注入详细说明
  • 医院移动护理系统源码,JAVA移动护理系统源码,医院移动护士站源码
  • 网站建设营销型新型塑料建筑模板图片
  • Linux 有哪些功能相似的命令
  • 外贸推广网站冲压加工瑞安有做网站吗