CSS 学习路线 MOC

从零基础到可独立交付布局、响应式与工程化样式的 CSS 系统学习路线:七个阶段、依赖关系、逐篇目录与完成标准。

#type / moc #type / synthesis #status / growing #tech / dev #tech / dev / frontend #resource / css

[!info] related notes

CSS 学习路线 MOC

这个概念为什么出现

没有依赖顺序时,CSS 学习会变成属性速查:会抄 Flex 却不懂层叠,会写动画却不会控制包含块,会上 Tailwind 却不懂设计 token 与层叠上下文。本路线把「从零到可交付页面样式」拆成七个阶段。

[!abstract] 路线结论 先建立“选择器 + 层叠 + 盒模型”的默认心智,再学文档流与定位,随后进入 Flex/Grid 现代布局;响应式与视觉效果建立在布局稳定之后,最后用变量、方法论与工具链(含 Tailwind)进入工程化。

整条路线围绕五个问题:

  1. 为什么最终样式是层叠计算的结果,而不是“最后一行一定赢”
  2. 盒模型与包含块如何决定尺寸
  3. 文档流、定位、Flex、Grid 各自解决什么布局问题
  4. 响应式是断点堆砌还是约束系统设计
  5. 工具类/CSS-in-JS/预处理器如何接回 CSS 本体

如何使用这份路线

场景做法
从零开始按阶段顺序;每篇在浏览器 DevTools 验证计算样式
已会抄布局回补阶段一/二,再进工程化
主攻 Tailwind至少完成阶段一到四,再进 Tailwind 学习路线

难度标记

  • L1 入门 · L2 基础巩固 · L3 核心心智 · L4 工程 · L5 进阶细节

依赖关系总图

flowchart TD
    S1["阶段一 选择器与层叠"] --> S2["阶段二 盒模型与文档流"]
    S2 --> S3["阶段三 现代布局"]
    S3 --> S4["阶段四 响应式"]
    S3 --> S5["阶段五 视觉与动效"]
    S4 --> S6["阶段六 工程化"]
    S5 --> S6
    S6 --> S7["阶段七 真实项目样式能力"]

阶段与子 MOC 对照

阶段目标主要子 MOC
选择器、层叠、继承、优先级层叠与选择器 MOC
盒模型、文档流、定位、BFC盒模型与布局 MOC
Flex、Grid、居中与常见版式盒模型与布局 MOC
单位、媒体查询、响应式策略响应式与视觉 MOC
文本、颜色、变换、过渡、动画响应式与视觉 MOC
变量、BEM、Modules、工具链、TailwindCSS 工程化 MOC
表单样式、打印、组件级实践CSS MOC · Tailwind

阶段一:选择器与层叠

目标:能解释“这条规则为什么生效”。

完成标准

  • 能计算常见优先级冲突
  • 能区分继承属性与非继承属性
  • 会用 DevTools 看 computed / 被覆盖规则
序号笔记核心问题难度源码
1.1CSSCSS 是什么L1
1.2选择器如何选中元素L1
1.3伪类与伪元素状态与片段如何选中L2
1.4优先级与特异性冲突如何裁决L3建议
1.5层叠、继承与源顺序层叠全流程L3建议

阶段二:盒模型与文档流

目标:理解元素占位与定位参照。

完成标准

  • 能说明 content-box / border-box
  • 能解释 margin 折叠与 BFC
  • 能判断 position 各值的包含块
序号笔记核心问题难度源码
2.1盒模型宽高由哪些盒子组成L2
2.2box-sizing尺寸计算口径L1
2.3文档流、display 与定位正常流如何排布L3建议
2.4position定位模式L2
2.5BFC块格式化上下文L3建议
2.6基线与 vertical-align行内对齐L3
2.7overflow 与滚动容器溢出与滚动L2
2.8margin 塌陷垂直外边距合并L2

阶段三:现代布局

目标:用 Flex/Grid 解决一维/二维布局。

完成标准

  • 能独立完成常见中轴居中与圣杯/侧栏布局
  • 能说明 Flex 与 Grid 的选型边界
  • 不把 float 当现代主布局
序号笔记核心问题难度源码
3.1Flex 布局一维分布与对齐L2
3.2Flexbox 细节Flex 算法细节L3建议
3.3Grid 布局二维轨道布局L2
3.4Grid 细节网格定义与区域L3建议
3.5居中布局居中方案选择L2
3.6两栏布局常见版式L2

阶段四:响应式

目标:按约束设计自适应界面。

完成标准

  • 能在 rem/em/vw 等单位间选择
  • 能写移动优先媒体查询
  • 知道容器查询的适用场景
序号笔记核心问题难度源码
4.1单位与响应式尺寸单位语义L2
4.2响应式布局断点与策略L2
4.3rem/em/px相对单位对照L1

阶段五:视觉与动效

目标:在不破坏可访问与性能的前提下做视觉反馈。

完成标准

  • 能区分 transition / animation / transform
  • 知道哪些属性更适合做动画
  • 能为状态伪类设计交互反馈
序号笔记核心问题难度源码
5.1文本与视觉样式文本与外观L2
5.2CSS 变量自定义属性L2
5.3transform变换L2
5.4transition过渡L2
5.5animation关键帧动画L2
5.6创建 CSS 动画实操L2
5.7伪类状态设计交互状态L3

阶段六:工程化

目标:让样式可扩展、可协作、可构建。

完成标准

  • 能解释 BEM / Modules / utility-first 的取舍
  • 能在项目中使用 CSS 变量做主题
  • 知道 PostCSS/Sass/Tailwind 的位置
序号笔记核心问题难度源码
6.1BEM命名约定L2
6.2CSS Modules局部作用域L2
6.3CSS-in-JS运行时/编译时样式L3
6.4Sass/SCSS预处理器L2
6.5PostCSS转换管线L2
6.6样式方案演进与选型方案对比L3
6.7工具类与关注点分离utility 争议L3
6.8Tailwind CSS工具类框架入口L2
6.9Tailwind 学习路线系统学习L2

阶段七:真实项目样式能力

目标:覆盖表单、打印、半像素等工程场景。

序号笔记核心问题难度源码
7.1表单样式控件美化边界L2
7.2打印样式print 媒体L2
7.30.5px 边框高分屏细节L3
7.4文本溢出省略与多行截断L2

如果只抓主干,优先这 8 个主题

  1. 优先级
  2. 层叠与继承
  3. 盒模型
  4. 文档流与定位
  5. Flex
  6. Grid
  7. 响应式布局
  8. CSS 变量

0 到 1 的完成标准

  • 能解释一条样式冲突的层叠结果
  • 能不靠框架完成两栏 + 响应式布局
  • 能用变量实现浅/深主题切换雏形
  • 能说明何时用 Flex 何时用 Grid
  • 能评估 Tailwind/Modules 的适用场景

认知跳跃提醒

  1. 未懂层叠就上 !important → 先 1.4 / 1.5
  2. 未懂盒模型就调 margin 玄学 → 先 2.1 / 2.5
  3. 未懂布局就堆绝对定位 → 先 2.3 / 3.1 / 3.3
  4. 未懂 CSS 本体就只背 Tailwind class → 先阶段一到四,再 Tailwind 路线

相关入口

自测题

  1. 为什么响应式阶段放在 Flex/Grid 之后?
  2. Tailwind 为什么挂在工程化而不是阶段一?
答案
  1. 响应式是在稳定布局模型上施加约束,而不是替代布局模型。
  2. Tailwind 是工作流与设计系统层;先懂 CSS 计算与布局,工具类才不会变成黑盒字符串。
创建于 2026/7/15 更新于 2026/7/15