CAIBIN

博客样式重构:从“果味”拟态到“数字野兽派”的终端美学

今天是周日,原本只是想微调一下博客(caibin.net)的首页样式,结果一不小心陷入了长达数小时的 CSS “重构深渊”。

对于我们这种技术博主来说,博客的前端样式就像穿衣风格。太素了觉得简陋,太花哨了又觉得喧宾夺主。今天的改造经历了一个有趣的“反向进化”过程:从追求现代感的 Apple 风格,最终回归到了最原始、最硬核的 终端(Terminal)风格

1. 试错:当“高级感”变得乏味

起初,我想走流行的 Apple Style(果味风格)。 上了大量的毛玻璃(Backdrop Blur)、超大圆角、加上了阴影悬浮效果。乍一看确实很有“科技感”,像是在浏览 macOS 的设置界面。

但很快我就发现了问题:

  • 信息密度低:为了迁就卡片设计,浪费了大量屏幕空间。
  • 气质不符:我的博客内容多是 Linux 服务器、跨境电商干货、脚本代码。这种“软糯”的 UI 风格,和硬核的内容产生了违和感。
  • 视觉空洞:在大屏幕下,简单的卡片布局显得过于稀疏,缺乏一种“扎实”的阅读体验。

2. 回归:Digital Brutalism(数字野兽派)

经过几轮调整,我意识到我真正需要的不是“好看”,而是**“像代码一样纯粹”**。

于是,我删除了所有花里胡哨的圆角和阴影,拥抱了 Terminal Style

  • 配色:背景采用 GitHub Dark Dimmed 风格的深灰黑(#0d1117),文字采用终端默认的灰白。
  • 字体:强制全局使用等宽字体(Monospace),无论是标题还是正文,都像是在 IDE 里写代码。
  • 布局:收紧宽度到 780px,去除多余留白,强调信息的高密度。
  • 交互:鼠标悬停时,左侧亮起蓝色光标,不仅是装饰,更是“选中”的隐喻。

3. 干货:最终版 CSS 代码

如果你也喜欢这种类似 VS Code 界面的极简风格,可以将以下代码添加到 WordPress 的 外观 -> 自定义 -> 额外 CSS 中。

这套代码已经解决了头部间距过大、移动端适配以及深色模式下的阅读体验问题:

CSS

/* =========================================
   1. 核心基调:GitHub Dark Dimmed 质感
   ========================================= */
:root {
    --bg-color: #0d1117;       /* 深灰黑底 */
    --text-main: #c9d1d9;      /* 终端白字 */
    --text-dim: #8b949e;       /* 注释灰 */
    --accent: #58a6ff;         /* 链接蓝 */
    --border: #30363d;         /* 边界线 */
    --hover-bg: #161b22;       /* 悬停高亮 */
}

body {
    background-color: var(--bg-color);
    color: var(--text-main);
    font-family: "JetBrains Mono", "SF Mono", "Fira Code", monospace;
    line-height: 1.6;
    letter-spacing: -0.015em;
    -webkit-font-smoothing: antialiased;
}

/* =========================================
   2. 布局容器:收紧宽度至 780px
   ========================================= */
#page, #main, .site-content, #content {
    max-width: 780px;
    margin: 0 auto;
    padding: 10px 20px 40px !important;
    background: transparent;
    margin-top: 0 !important;
}

/* =========================================
   3. 头部:精密仪表盘风格
   ========================================= */
header, #masthead, .site-header {
    padding-top: 25px !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
    border-bottom: 1px solid var(--border);
    min-height: 0 !important;
}

/* 清除默认间距 */
.site-branding, .site-title, .custom-logo-link, .main-navigation {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
}

/* =========================================
   4. 文章列表:命令行交互感
   ========================================= */
article, .post-container {
    padding: 20px 15px;
    margin-bottom: 0;
    border-bottom: 1px solid var(--border);
    border-left: 3px solid transparent;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

article:first-child { border-top: 1px solid var(--border); }

/* 悬停光效 */
article:hover {
    background-color: var(--hover-bg);
    border-left-color: var(--accent);
    cursor: pointer;
}

/* 标题前的 >_ */
article h2 a::before {
    content: ">_ ";
    color: var(--accent);
    opacity: 0.7;
    margin-right: 2px;
}

/* 胶囊化标签 */
.entry-meta a {
    background: rgba(56, 139, 253, 0.1);
    color: var(--accent);
    padding: 2px 8px;
    border-radius: 4px;
    text-decoration: none;
    font-size: 0.75rem;
}

/* =========================================
   5. 底部状态栏
   ========================================= */
footer {
    border-top: 1px double var(--border);
    margin-top: 40px;
    padding: 20px 0;
    color: #484f58;
    font-size: 0.8rem;
    display: flex;
    justify-content: space-between;
}

footer::after {
    content: "● ONLINE";
    color: #2ea043;
    font-size: 10px;
    letter-spacing: 1px;
}

4. 遇到的坑与细节配置

关于头部间距的“暴力”修复 很多 WordPress 主题为了美观,给 Header 设置了巨大的 min-heightpadding。在这次改造中,我使用了大量的 !important 强行覆盖了原有样式,确保分割线(border-bottom)能紧贴着导航栏,不再有那种“漏风”的感觉。

PDF 插件的适配 由于文章宽度被限制在了 780px,为了让嵌入的 PDF 文档(比如行业报告)看起来更协调,我在 PDF Embedder 插件中使用了以下设置:

  • Width: max (自动填满容器)
  • Height: 600 (固定高度,千万别设 max,否则会消失)
  • Toolbar: Bottom + On Hover (仅悬停显示,保持极简)

写在最后

现在的博客看起来不再像是一个“网站”,而更像是一个 Log 文件 或者 终端窗口

这种风格可能不讨好所有人,但对于习惯在黑色背景下敲击键盘的人来说,这才是最舒适的阅读界面。折腾完毕,收工。