惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
博客园_首页
S
SegmentFault 最新的问题
罗磊的独立博客
博客园 - 【当耐特】
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
阮一峰的网络日志
阮一峰的网络日志
D
Docker
雷峰网
雷峰网
Google DeepMind News
Google DeepMind News
博客园 - 司徒正美
V
V2EX
大猫的无限游戏
大猫的无限游戏
V
Visual Studio Blog
腾讯CDC
宝玉的分享
宝玉的分享
酷 壳 – CoolShell
酷 壳 – CoolShell
人人都是产品经理
人人都是产品经理
T
Tailwind CSS Blog
Vercel News
Vercel News
H
Help Net Security
博客园 - Franky
D
DataBreaches.Net
aimingoo的专栏
aimingoo的专栏

博客园 - 华安

自适应网格系统:CSS Grid中repeat()、auto-fill与auto-fit的深度解析 springBoot中的 pom.xml文件 bulid学习 CSS中元素的display显示方式有多种,隐藏、块级、内联、内联-块级 SQl Server 中的 go 是什么作用 CSS中 display:flex的align-items: stretch; 移动端浏览器(尤其是 iOS Safari)的橡皮筋回弹效果(Overscroll / Bounce Effect) 手机端浏览器上ES6中的Fetch回调执行 window.open没效果 用Flex实现兼容性好的全屏布局 在 VS Code 中使用 C# Dev Kit 和 Unity Tools 调试 Unity 2022 Unity 可编程物件(ScriptableObject) 微信小程序中的 联系客服 最基本的使用方法 wx.requestSubscribeMessage(Object object) 和 wx.requestSubscribeDeviceMessage(Object object) 这两个有什么区别 微信小程序中 wx.hideLoading() 后调用 wx.showToast()的问题 Windows 中启动 Nginx的常用命令 CSS进阶技巧:字体渐变、描边、倒影与渐变色描边全解析 netCore 中各DLL引用了 SkiaSharp.dll的问题 unity中预制体解包 在 Unity 中,Time.timeScale实现游戏暂停加速等 微信小程序中关联微信支付 unity中的 Navigation AI使用 C#中TaskCompletionSource(简称 TCS)学习 Unity 编辑器 中,快捷键 Ctrl + Shift + F 的功能 unity中按下 F键,让物体聚焦 微信中进入定页面的,判断时通过扫二维码进入的,还是点小程序名称进入的 MYSQL中从JSON字符串中提取指定的值 Unity2022中创建动画 Animation(旧方法) Unity 中区别,public 和 [SerializeField] Unity中 onCollisionEnter2D与OnTriggerEnter2D 区别 asp.netCore中给动态请求路径加客户端缓存 netCore中获取客户端真实的IP引起的思考
CSS3中响应式布局两大神器display:flex和display:grid
华安 · 2026-09-15 · via 博客园 - 华安

CSS Grid 和 Flexbox 都是非常强大的布局工具,各有优势,适合不同的场景,无法简单地说谁“更优秀”。可以从以下几个方面比较它们的特点,帮助你根据需求选择:

Grid学习链接:https://www.runoob.com/css3/css-grid-container.html

FlexBox学习链接:https://www.runoob.com/css3/css3-flexbox.html

1. 布局维度

  • Flexbox:一维布局,主要在一条轴线(行或列)上排列子元素。适合做一行或一列的排列和对齐。
  • Grid:二维布局,同时处理行和列。适合做复杂的网格布局,比如页面整体的结构划分。

2. 复杂度与灵活性

  • Flexbox:更简单直观,适合小规模的布局,项目间的分布、对齐非常方便。
  • Grid:功能更强大,支持精确的网格定义,可以定义行高、列宽、行列跨度,更适合做复杂的整体布局。

3. 代码语义和维护

  • Flexbox:代码通常简洁明了,适合局部组件布局。
  • Grid:代码可能比较冗长,但能表达清晰的布局意图,维护大规模布局时更有优势。

4. 浏览器支持

  • 现代浏览器对两者都支持很好,兼容性均非常优秀。

5. 实际应用建议

  • 如果你只需要水平或者垂直的排列、对齐,Flexbox 是首选。
  • 如果你需要网页的整体布局,控制多行多列,复杂网格结构,Grid 更合适。
  • 也可以结合使用,利用 Grid 做大框架,利用 Flexbox 做内部排列。

总结

两者各有千秋,选择关键看使用场景:

特性FlexboxGrid
布局维度 一维(行或列) 二维(行和列)
适用场景 简单排列,对齐 复杂网格布局
灵活性 灵活,适合组件内部布局 精确控制,适合整体布局
学习曲线 相对简单 稍复杂