学习 CSS 布局最好的方式是动手实践。这两款游戏通过趣味关卡帮你掌握 Flexbox 和 Grid。
Flexbox Froggy
游戏地址:https://flexboxfroggy.com/
游戏介绍
通过帮助青蛙找到荷叶来学习 Flexbox 布局。共 24 关,从简单到复杂逐步深入。
学习内容
justify-content- 水平对齐align-items- 垂直对齐flex-direction- 主轴方向flex-wrap- 换行align-content- 多行对齐order- 项目顺序align-self- 单个项目对齐
示例关卡
关卡 1:将青蛙移到右侧
1 | #pond { |
关卡 12:使用 flex-direction 和 justify-content
1 | #pond { |
适合人群
- Flexbox 初学者
- 需要复习 Flexbox 属性的开发者
- 喜欢通过游戏学习的人
CSS Grid Garden
游戏地址:https://cssgridgarden.com/
游戏介绍
通过给花园浇水来学习 Grid 布局。共 28 关,涵盖 Grid 的核心概念。
学习内容
grid-column-start/end- 列起止位置grid-row-start/end- 行起止位置grid-column- 列简写grid-row- 行简写grid-area- 区域定位grid-template-columns- 定义列grid-template-rows- 定义行grid-template- 模板简写
示例关卡
关卡 1:给第 3 列浇水
1 | #garden { |
关卡 17:使用 grid-area
1 | #water-1 { |
适合人群
- Grid 初学者
- 想要系统学习 Grid 的开发者
- 已经掌握 Flexbox,想学习更强大的布局方案
两者对比
| 特性 | Flexbox | Grid |
|---|---|---|
| 布局维度 | 一维(行或列) | 二维(行和列) |
| 适用场景 | 导航栏、卡片排列 | 页面整体布局、复杂表格 |
| 难度 | 简单 | 中等 |
| 浏览器支持 | 更好 | 较好(IE11 需要前缀) |
实战应用
Flexbox 常用场景
1 | /* 导航栏 */ |
Grid 常用场景
1 | /* 页面布局 */ |
进阶资源
完成游戏后,可以继续学习:
- CSS Tricks - A Complete Guide to Flexbox
- CSS Tricks - A Complete Guide to Grid
- MDN - Flexbox
- MDN - CSS Grid
学习建议
- 先玩 Flexbox Froggy:Flexbox 更简单,作为入门
- 再玩 Grid Garden:Grid 功能更强大,但也更复杂
- 实践结合:游戏通关后,尝试在真实项目中应用
- 记录笔记:把常用的属性组合记录下来
其他相似游戏
- Flexbox Defense - 塔防游戏学 Flexbox
- Grid Attack - 战斗游戏学 Grid
- CSS Diner - 学习 CSS 选择器
总结
通过这两款游戏,你可以在轻松愉快的氛围中掌握 CSS 的两大布局利器。建议每天花 10-15 分钟通关几个关卡,循序渐进地提升布局能力。