Flexbox 布局完全入门指南
文章目录1. 为什么需要 Flexbox2. 核心概念主轴与交叉轴 3. 五大核心属性逐个击破3.1 flex-direction —— 传送带朝哪边走3.2 flex-wrap —— 货物太多时换行还是挤一挤3.3 justify-content —— 如何在主轴上安排货物3.4 align-items —— 单行内如何垂直摆放货物3.5 align-content —— 多行货物整体如何分布实战练习1. 为什么需要 Flexbox它把一个容器变成“弹性盒子”让里面的子元素能够灵活地伸缩、对齐和分配空间。 你只需要告诉管家“把东西放在中间”、“让它们均匀散开”剩下的它会自动搞定。2. 核心概念主轴与交叉轴 这是理解所有属性的关键我们用一个比喻。想象你手里有一条 传送带这就是“主轴” Main Axis它有一个固定的运行方向。你可以把货物子元素一个个放在传送带上。同时传送带本身有宽度货物的摆放还可以在垂直于传送带的方向上对齐这个垂直方向就是 交叉轴Cross Axis。主轴方向由 flex-direction 决定货物是水平流动还是垂直流动。交叉轴方向始终与主轴垂直。所有对齐属性都是围绕这两个轴展开的。记住这张图的概念(主轴方向 → → →)[货1][货2][货3]... ← 这是默认水平主轴 ↑ 交叉轴方向垂直对齐3. 五大核心属性逐个击破我们先准备一个基础的 HTML 结构和 CSS后面所有的演示都基于它修改。divclasscontainerdivclassitem1/divdivclassitem2/divdivclassitem3/div/div.container{display: flex;/* 开启弹性盒子管家模式 */ /* 下面我们将在这里添加各种属性 */ /* 为了演示效果给容器一点高度和背景 */ height: 200px;background-color:#e8f0fe;margin-bottom: 20px;}.item{width: 80px;/* 为了看清每个项目给个背景色和间距 */ background-color:#4a90e2;color: white;padding: 20px0;text-align: center;border-radius: 8px;}3.1 flex-direction —— 传送带朝哪边走它决定主轴的方向也就是货物摆放的流向。row默认主轴水平从左到右。传送带水平向右移动。row-reverse主轴水平从右到左。column主轴垂直从上到下。column-reverse主轴垂直从下到上。.container{display: flex;flex-direction: row;/* 可以改成 row-reverse, column, column-reverse 试试 */}效果描述以 row 为例 三个小盒子在容器里从左往右排成一行就像货物放在水平传送带上。row默认columnrow-reversecolumn-reverse3.2 flex-wrap —— 货物太多时换行还是挤一挤当货物总宽度超过传送带宽度时flex-wrap 决定是否换行。nowrap默认不换行所有项目硬挤在一行可能会被压缩。wrap自动换行放不下的项目会移到下一行保持原本尺寸。wrap-reverse换行但行的排列方向反转第一行在下方。.container{display: flex;flex-wrap: wrap;/* 项目宽度若超过容器会自动折行 */ /* 为了让项目换行我们可以多复制几个item或者把容器宽度设小 */ width: 260px;}.item{width: 80px;/* 三个*80240容器宽260刚好一行。再加一个就会换行 */}效果 如果只有三个项目它们舒舒服服在一行。但如果有五个项目后两个会自动掉到第二行。nowrapwrapwrap-reverse3.3 justify-content —— 如何在主轴上安排货物它定义项目在主轴上的对齐方式和间距分配。想象你是管理员手里有一些空余空间你决定如何把货物摆在传送带上。flex-start默认所有货物挤在起点。flex-end所有货物挤在终点。center所有货物居中聚集。space-between货物两端对齐中间空间平均分配。第一个贴起点最后一个贴终点。space-around每个货物两侧的间距相等。所以两个货物之间的空白是边缘空白的两倍。space-evenly所有间距完全相等包括货物到边缘的距离。.container{display: flex;justify-content: center;/* 切换不同值查看效果 */}flex-start:[1][2][3](右边大量空白)center:[1][2][3](居中)flex-end:[1][2][3](靠右)space-between:[1][2][3](1贴左3贴右间距相等)space-around:[1][2][3](两边空白是中间空白的一半)space-evenly:[1][2][3](空白完全相等1到左边缘间距1到2的间距)3.4 align-items —— 单行内如何垂直摆放货物这个属性用来设置项目在交叉轴上的对齐方式适用于所有项目在同一行或一列内的场景。stretch默认如果项目没设高度/宽度会拉伸填满整个交叉轴。flex-start项目在交叉轴起点对齐。flex-end项目在交叉轴终点对齐。center项目在交叉轴居中。这就是传说中的“垂直居中”神器baseline项目内文字的第一行基线对齐。.container{display: flex;align-items: center;/* 垂直居中也是最常用的值 */ height: 200px;/* 给容器一个高度才能看出交叉轴对齐效果 */}效果 无论每个小盒子本身高度是否一致比如文字多的盒子更高它们都会在容器垂直方向正中间对齐。baseline 则让所有盒子的第一行文字底部线对齐即使盒子高度不同。3.5 align-content —— 多行货物整体如何分布这是进阶但极易混淆的一点 align-content 只有在多行或多列时才会生效也就是必须配合 flex-wrap: wrap或 wrap-reverse且内容真的换成了多行。它控制的是多根主轴多行在交叉轴方向上的整体对齐和间距。简单说align-items 管同一行里每个货怎么摆align-content 管行与行之间怎么摆。如果只有一行align-content 设了也没用。它的值很多和 justify-content 类似但作用在交叉轴上stretch默认每行拉伸均匀填满交叉轴空间。flex-start所有行挤在交叉轴起点。flex-end挤在终点。center所有行整体居中。space-between第一行贴顶最后一行贴底中间行均匀分布。space-around每行上下间距相等边缘空间是行间距的一半。space-evenly所有行间距完全相等包括到顶和到底。.container{display: flex;flex-wrap: wrap;/* 必须换行 */.navbar{display: flex;/* 主轴上两端对齐logo贴左链接贴右 */ justify-content: space-between;/* 交叉轴垂直居中让 logo 和菜单项高度不一也能对齐 */ align-items: center;background-color:#2c3e50;padding:020px;height: 60px;}.nav-links{display: flex;/* 菜单内部也用flex让 li 水平排列 */ list-style: none;gap: 20px;/* 现代浏览器支持的间距属性相当好用 */}.nav-links li{color: white;cursor: pointer;}.logo{color:#f1c40f;font-weight: bold;font-size:1.5em;}align-content: center;/* 让多行在容器垂直方向居中 */ height: 300px;/* 足够高才能看出效果 */}.item{width:40%;/* 让一行放不下三个强行换行产生两行 */}实战练习navclassnavbardivclasslogo MySite/divulclassnav-linksli首页/lili课程/lili关于/li/ul/nav

相关新闻

TMS320C54x DSP开发板硬件设计:从架构到调试的工程实践

TMS320C54x DSP开发板硬件设计:从架构到调试的工程实践

1. 项目概述:从芯片到系统,解密一块经典DSP开发板的诞生在嵌入式信号处理领域,德州仪器(TI)的TMS320C54x系列DSP曾是一代经典。它凭借其高效的哈佛架构、出色的功耗控制以及丰富的外设,在无线通信、语音编解…

2026/7/27 5:35:33 阅读更多 →
Unity WebGL常见报错深度解析与实战解决方案

Unity WebGL常见报错深度解析与实战解决方案

1. 项目概述:为什么Unity WebGL报错如此“磨人”?如果你是一名Unity开发者,并且尝试过将项目发布到WebGL平台,那么“报错”这个词对你来说,可能已经从一个简单的技术术语,变成了一个能瞬间点燃焦虑的触发器…

2026/7/27 5:34:33 阅读更多 →
APVP-MHA-MTL-LSTM模型在能源负荷预测中的创新应用

APVP-MHA-MTL-LSTM模型在能源负荷预测中的创新应用

1. 项目概述与核心创新在能源管理领域,多变量负荷预测一直是个极具挑战性的任务。传统方法如ARIMA或单一LSTM模型往往难以同时处理电、气、冷、热等多种能源负荷的复杂关联特性,特别是在负荷波动剧烈的峰谷时段预测精度明显下降。我们团队开发的APVP-MHA…

2026/7/27 5:34:33 阅读更多 →

最新新闻

0基础专升本同学 怎么理解C语言?(上)

0基础专升本同学 怎么理解C语言?(上)

说实话,C语言不简单,我拆书都要专门写两片帖子。 尤其学到数组、函数、指针以后,理解难度会明显上升。 不过,我还是想把谭浩强的《C程序设计》带同学们从头梳理了一遍。 C语言到底是什么? 简单来说,C语言就…

2026/7/27 5:47:41 阅读更多 →
【单片机毕业设计推荐】基于 51/STM32 单片机的人体感应智能台灯系统设计与实现,基于单片机的光敏自适应智能照明台灯控制系统设计(021403)

【单片机毕业设计推荐】基于 51/STM32 单片机的人体感应智能台灯系统设计与实现,基于单片机的光敏自适应智能照明台灯控制系统设计(021403)

文章目录20 个相关毕业设计备选题目项目研究背景摘要总体方案核心功能技术路线项目演示关于我们项目案例源码获取温馨提示:本人主页置顶文章(点我)有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)有 CSDN 平台官…

2026/7/27 5:47:41 阅读更多 →
YOLOv8模型LAMP剪枝技术详解与实战

YOLOv8模型LAMP剪枝技术详解与实战

1. YOLOv8模型压缩实战:LAMP剪枝技术深度解析目标检测模型YOLOv8在精度和速度上取得了显著突破,但模型参数量和计算量也随之增加。在边缘设备部署时,这会导致内存占用高、计算延迟大、能耗增加等问题。模型剪枝技术能有效解决这一痛点&#x…

2026/7/27 5:47:41 阅读更多 →
CentOS 7下Nginx部署与深度性能调优实战指南

CentOS 7下Nginx部署与深度性能调优实战指南

1. 项目概述:为什么是Nginx与CentOS 7的组合?在Web服务部署的江湖里,Nginx和CentOS 7这对组合,可以说是许多运维工程师和开发者的“老伙计”了。Nginx以其高性能、高并发和低内存消耗著称,而CentOS 7作为一款稳定、可靠…

2026/7/27 5:47:41 阅读更多 →
Godot工程化实践:从路径错误到健壮项目架构

Godot工程化实践:从路径错误到健壮项目架构

1. 项目概述:从“GodotProjectDir is null”到工程化实践如果你在用Godot开发游戏,尤其是项目稍微复杂一点,或者尝试用Git进行版本管理时,很可能在编辑器控制台里见过这个让人心头一紧的红色错误:“GodotProjectDir is…

2026/7/27 5:47:41 阅读更多 →
M2.7框架提升GPU利用率:科学计算自动化实践

M2.7框架提升GPU利用率:科学计算自动化实践

1. 项目背景:当科研遇上闲置GPU 凌晨3点的实验室,显示器荧光映着半杯凉透的咖啡。这是我第七次手动启动蛋白质分子动力学模拟任务,盯着屏幕上跳动的GPU利用率曲线——那根代表计算资源的蓝色线条在任务间隙总是不甘心地跌到谷底。作为计算化学…

2026/7/27 5:46:41 阅读更多 →

日新闻

【JAVA毕设源码分享】基于SpringBoot的社区智能垃圾管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于SpringBoot的社区智能垃圾管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:54 阅读更多 →
SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

SPI实战指南:从时钟模式到寄存器配置,解决嵌入式通信难题

1. 项目概述:从寄存器手册到实战指南 如果你手头有一份类似德州仪器(TI)TMS320x240xA系列DSP的SPI模块技术手册,看着里面密密麻麻的寄存器位定义、时序图和公式,是不是感觉头大?这份资料虽然权威&#xff0…

2026/7/27 0:00:54 阅读更多 →
【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

【JAVA毕设源码分享】基于springboot的水果购物管理系统的设计与实现(程序+文档+代码讲解+一条龙定制)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

2026/7/27 0:00:54 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/27 4:33:59 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/26 0:00:31 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/27 4:01:12 阅读更多 →

月新闻