1 minrss原文 ↗

告别 Tailwind,重新学习组织 CSS

为什么值得读一个 8 年 Tailwind 老用户从 Tailwind v2 迁移到原生 CSS 的全过程:组件化、色彩体系、Grid 响应式、构建。对「想摆脱 Tailwind 又不知道怎么组织 CSS」的人,是一份可操作的路线图。

8 年前发现 Tailwind 时我激动不已。当时完全不会组织 CSS 代码,Tailwind 给了我用现成系统的安全感。上礼拜我把几个网站从 Tailwind 迁移到了语义化 HTML + 原生 CSS,过程超有趣。

Tailwind 其实教了我很多:CSS reset、颜色调色板、字体刻度、utility class 都是值得保留的好概念。迁移时我仿照这些模式建立了自己的体系:

  1. CSS reset:直接复制 Tailwind 的 preflight。
  2. 组件化:每个组件一个 class,CSS 文件一对一,互不覆盖——类比 Vue/React 组件的思路。
  3. 颜色:全部集中在一个 file 里用 CSS 变量。
  4. 字体大小:从 Tailwind 搬来的 size-xs 到 size-4xl 变量。
  5. Utility 类:只保留极少数(如 .sr-only)。
  6. Base 样式:尽量少用,让组件自己管自己。
  7. 间距:用 owl selector 和「外边距由父组件负责」原则。
  8. 响应式:用 CSS Grid 的 auto-fit/minmax 代替一堆 media query。
  9. 构建:用 esbuild bundle(基于 web 标准,静态 Go 二进制)。

为什么离开 Tailwind?因为新版越来越依赖构建系统,而我一直在用 v2。原生 CSS 现在有 @import、嵌套选择器、Grid、color-mix、@scope,已经足够好用了。

如果可以重来,你还愿意花这段时间读它吗?

· 匿名阅读记录只用于改进推荐