这个站点为什么只有 HTML 和 CSS
这个站从第一行开始就没打算用 JavaScript。不是反对它,是这里不需要。
这个站不需要交互
几页文字,没有评论、没有搜索、没有需要客户端记住的状态。加脚本只会多一个会坏的部分:多一个要测的分支、多一个兼容性问题、多一个可能被注入的入口。能删掉的复杂度就删掉。
加载快
一个 CSS 文件,没有外部字体,没有 CDN,没有统计脚本,没有第三方请求。断网的时候把文件直接打开也能读(页面之间用相对路径互链,file:// 下也能点)。第一次打开不需要等任何东西。
CSP 可以收得很紧
页面里没有内联脚本、没有外部资源,响应头就可以收得很死:默认什么都不许,只放行同源的样式和图标,script-src 'none' 也能成立。这不是「更安全」的证明,只是把可攻击的面缩小到几乎没有。
一点实现
- 语义化标签:
header、nav、main、article、footer,标题按层级排,不用一堆 div 堆。 - 深色/浅色跟随
prefers-color-scheme,用 CSS 变量换一组颜色,不写第二份样式。 - 可打印样式:去掉背景和导航,正文里的外部链接展开地址,打印出来至少能读。
- 系统字体栈,不加载外部字体;正文最大宽度约 720px,行高 1.75。
:focus-visible给键盘用户一个清楚的焦点框。
代价
没有动态内容,改一次就要重新发布一次。对这么小的站点,这个代价可以接受。