这个站点的样式表是手写的,没有 Tailwind,也没有组件库。不是因为我反对工具,而是因为这个站点只有几个页面,引入一套框架意味着我要先学习它的约定,再花时间把它调成我想要的样子。

手写 CSS 的好处是很直接的:文件小、加载快、每一行都能追溯到某个具体的问题。我需要一个在维吾尔语 RTL 布局下仍然对齐的卡片,就写一段 @media 和一段逻辑属性;需要深色模式,就用自定义属性换一组颜色。没有构建步骤,改完刷新就生效。

代价也很清楚:重复的样式会变多。我的做法是把按钮、卡片、标签这些重复出现的东西抽成几个类,其余的宁可重复几次,也不提前抽象。页面一共不到十个,过早的抽象反而会让后来的修改更麻烦。

如果这个站点再长大一倍,我可能会重新考虑。但到现在为止,一个两百多行的 CSS 文件,仍然是我能完整读懂的规模。