Skip to content

渐进迁移策略 ​

迁移旧页面不是一次性重写,而是先建立可观察基线,再按责任拆分小步替换。每一步都要知道保留什么行为、如何验证、出现问题怎样回滚。

建议顺序是:记录文档模式和截图,补上测试与语义标记,隔离旧 CSS,迁移一块布局,删除已确认无用的 hack,最后调整构建和资源加载。不要在没有基线时同时更换 HTML、CSS、JavaScript 和后端模板。

text
旧页面 → 记录行为 → 建立语义边界 → 小块替换 → 对照验证 → 删除旧依赖

验证不能只看像素。至少检查内容顺序、键盘焦点、表单提交、响应式断点、打印、无障碍名称、脚本选择器和错误回退。旧浏览器若仍在支持范围,应把能力差异写成明确的回退,而不是让现代规则静默失败。

实验与练习 ​

选择本章的浮动两栏或表格布局,写一份迁移计划:基线、单次改动、观察指标、回滚条件和最终删除项。先只迁移一个局部组件,使用截图、DOM、键盘和窄屏检查证明没有改变契约。

可运行微实验:先复现旧行为再迁移 ​

为旧页面保留一个基线副本,分别在 quirks mode、table layout、float 多列和现代布局下运行。记录 DOM、尺寸、换行和脚本选择结果,再一次只迁移一个约束;迁移后必须用相同输入比较截图和交互行为。

常见错误 ​

  • 把“大重写”当成迁移计划。
  • 只用截图判断成功。
  • 没有回滚点就删除旧样式和兼容代码。
  • 把尚未支持的 CSS 当成无需测试的渐进增强。

全书回顾 ​

HTML & CSS 的主线从文档结构、选择器、盒模型和布局,推进到响应式、动画、格式化上下文、现代特性,再回到存量维护。新代码应优先使用语义 HTML、现代布局和可验证的增强;维护旧代码时先理解现有契约,再进行可回滚的小步迁移。

返回 HTML & CSS 全书导读

练习 ​

  1. 用最小输入复现“渐进迁移策略”的成功路径,并记录可观察结果。
  2. 改变一个时序、数据或宿主条件,解释结果为何变化。
  3. 删除清理、校验或降级分支,写出能证明缺陷的断言。

查看本节答案

用心记录每一步成长