news 2026/5/27 13:01:47

关于用flex弹性盒子修饰网页

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
关于用flex弹性盒子修饰网页

一.flex盒子的概念:

1.容器与项目:在网页中采用flex布局的元素称为flex容器,该容器的内部元素称为flex项目;通过 display: flex 可以将元素强制转换为 Flex 容器。

2.在flex容器中有两根轴(主轴,交叉轴),主轴由水平从左往右,交叉轴垂直于主轴。

3.flex容器的对齐方式由justify-content 主轴对齐,以及align-items 和 align-content 交叉轴对齐。

二.flex盒子的实验:

1.flex-wrap:wrap项目可以被压缩至适应容器的宽度,如果不想换行的话可以在wrap的前面加上no(flex-wrap:nowrap)

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>盒子的弹性布局</title> <style> .div1{ display: flex; border: 2px solid #a00; padding: 10px; height: 100px; flex-wrap: wrap } .div2{ background-color: #33c4d4; border: 3px solid rgb(46, 102, 213); width: 80px; height: 40px; color: white; text-align: center; } </style> </head> <body> <div class="div1"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> </body> </html>

2.justify-content:(flex-start(左对齐)/center(居中对齐)/flex-end(右对齐))主轴对齐,项目靠主轴的左对齐,居中对齐,右对齐。

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>盒子的弹性布局</title> <style> .div1{ display: flex; border: 2px solid #a00; padding: 10px; height: 100px; } .div2{ background-color: #33c4d4; border: 3px solid rgb(46, 102, 213); width: 80px; height: 40px; color: white; text-align: center; } </style> </head> <body> <div class="div1" style="justify-content: flex-start;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> <div class="div1" style="justify-content: flex-end;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> <div class="div1" style="justify-content: center"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> </body> </html>

主轴除了这三种对齐以外还有三种分别是:

space-evenly(项目之间以及项目与容器边缘的间距完全相等)

space-between(项目之间间距相等,但首尾项目紧贴容器边缘)

space-around(项目两侧的外边距相等(项目之间间距是边缘间距的2倍))

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>盒子的弹性布局</title> <style> .div1{ display: flex; border: 2px solid #a00; padding: 10px; height: 100px; } .div2{ background-color: #33c4d4; border: 3px solid rgb(46, 102, 213); width: 80px; height: 40px; color: white; text-align: center; } </style> </head> <body> <div class="div1" style="justify-content: space-evenly;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> <div class="div1" style="justify-content: space-between;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> <div class="div1" style="justify-content: space-around;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> </body> </html>

3.align-content::(flex-start(顶部对齐)/center(居中对齐)/flex-end(底部对齐))交叉轴对齐。

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>盒子的弹性布局</title> <style> .div1{ display: flex; border: 2px solid #a00; padding: 10px; width: 500px; height: 200px; flex-wrap: wrap } .div2{ background-color: #33c4d4; border: 3px solid rgb(46, 102, 213); width: 120px; height: 40px; color: white; text-align: center; } </style> </head> <body> <div class="div1" style="align-content: flex-start;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> <div class="div1" style="align-content: center;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> <div class="div1" style="align-content: flex-end;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> </body> </html>

对于交叉轴对齐,它还有两种对齐方式:

align-content:space-between(行与行之间间距相等,第一行靠顶,最后一行靠底)

align-content: space-around(行上下都有相等间距,整体与容器边缘也有间距)

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>盒子的弹性布局</title> <style> .div1{ display: flex; border: 2px solid #a00; padding: 10px; width: 500px; height: 200px; flex-wrap: wrap } .div2{ background-color: #33c4d4; border: 3px solid rgb(46, 102, 213); width: 120px; height: 40px; color: white; text-align: center; } </style> </head> <body> <div class="div1" style="align-content: space-between;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> <div class="div1" style="align-content: space-around;"> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> <div class="div2">盒子1</div> <div class="div2">盒子2</div> <div class="div2">盒子3</div> </div> </body> </html>

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/27 12:49:00

小型轧机选型指南:专业机构如何精准匹配

在冶金行业&#xff0c;小型轧机的选型直接关系到生产效率、产品质量和投资回报。不少企业因选型不当&#xff0c;导致设备利用率低、维护成本高&#xff0c;甚至不得不二次投资。本文结合行业数据和实际案例&#xff0c;分享如何通过科学方法精准匹配小型轧机&#xff0c;助你…

作者头像 李华
网站建设 2026/5/27 12:48:59

Prism Launcher:当Minecraft遇见开源哲学的完美融合

Prism Launcher&#xff1a;当Minecraft遇见开源哲学的完美融合 【免费下载链接】PrismLauncher A custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once (Fork of MultiMC) 项目地址: https://gitcode.com/gh_mirr…

作者头像 李华
网站建设 2026/5/27 12:47:11

基于布尔函数优化的FPGA模运算单元设计:从算术到逻辑的范式转换

1. 项目概述模运算&#xff0c;也就是我们常说的取模操作&#xff0c;是数字电路和计算系统里一个绕不开的基础运算。从密码学里的RSA、ECC算法&#xff0c;到数字信号处理中的滤波器设计&#xff0c;再到新兴的余数系统&#xff08;RNS&#xff09;计算架构&#xff0c;它的身…

作者头像 李华
网站建设 2026/5/27 12:47:10

钉钉打卡终极解决方案:XposedRimetHelper完整使用指南

钉钉打卡终极解决方案&#xff1a;XposedRimetHelper完整使用指南 【免费下载链接】XposedRimetHelper Xposed 钉钉辅助模块&#xff0c;暂时实现模拟位置。 项目地址: https://gitcode.com/gh_mirrors/xp/XposedRimetHelper 您是否每天被固定的打卡地点束缚&#xff0c…

作者头像 李华