Hexo Butterfly 美化
前言
博客文章质量是内核,但视觉效果是第一印象。Butterfly 主题本身已经很能打,但默认配置下还有大量优化空间。这次一口气做了 10 项美化改动,每一项都只需要改配置或加几行 CSS,不需要改主题源码,不会影响后续升级。
一、预加载动画(Preloader)
作用:页面首次加载时展示全屏 loading 动画,避免白屏和布局闪烁,大幅提升首屏体验。
1 | # _config.butterfly.yml |
二、点击涟漪效果
作用:鼠标点击页面任意位置产生水波纹扩散,替代默认无反馈的点击体验,有质感但不喧宾夺主。
相比烟花和爱心特效,涟漪更克制、更耐看,适合技术博客。
JS
1 | // source/js/click-ripple.js |
CSS
1 | /* source/css/custom.css */ |
注入
1 | inject: |
三、默认暗色模式
作用:博客默认以暗色模式展示,配合星空背景让定制 CSS 的光晕效果直接生效。
1 | display_mode: dark |
光晕动画是在 [data-theme="dark"] 选择器下生效的,默认亮色时访客根本看不到,切成暗色模式才出效果。
四、固定导航栏
作用:页面滚动时导航栏始终在顶部可见,不用滚回顶部才能切换页面。
1 | nav: |
五、Mac 风格代码块
作用:代码块左上角加上红黄绿三色圆点,技术博客的经典视觉元素。
1 | code_blocks: |
六、侧边栏最近文章 + 最新评论
作用:侧边栏增加两块动态内容——最近发布的文章和最新评论。文章页看完后直接侧边栏点下一篇,评论区有人说话也能立刻看到。
1 | aside: |
七、头像旋转动效 + 减速
作用:鼠标悬停在侧边栏头像上时缓慢旋转一圈,是一个不突兀的小细节。默认 0.3 秒太快像陀螺,减速到 0.8 秒才优雅。
1 | avatar: |
1 | /* source/css/custom.css */ |
八、关闭不蒜子,换 Twikoo 统计
作用:不蒜子(busuanzi.ibruce.info)是免费站点统计,但频繁 502。Twikoo 的 visitor: true 能顺带实现页面阅读量统计,一举两得。
1 | busuanzi: |
九、已启用的效果整理
这些是之前就开着、保留的效果:
| 效果 | 配置位置 | 说明 |
|---|---|---|
| 星空粒子背景 | source/js/universe.js |
暗色模式下满屏流动的星点 |
| 打字机副标题 | subtitle.effect: true |
首页自动打字效果 |
| Activate Power Mode | activate_power_mode.enable: true |
打字时彩色粒子飞出 |
| 点击飘字 | clickShowText.enable: true |
点击时随机飘出文字 |
| 页脚渐变色 | source/css/页脚渐变.css |
底部渐变流动动画 |
| 分类条 | categoryBar.enable: true |
首页分类卡片展示 |
| Swiper 轮播 | swiper.enable: true |
首页文章轮播 |
| 信笺留言板 | envelope_comment.enable: true |
留言板邮件风格样式 |
| WOW.js 动画 | wowjs.enable: true |
元素滚动入场动画 |
| Live2D 看板娘 | live2d.enable: true |
右下角二次元角色 |
| 暗光光晕文字 | custom.css |
暗色模式下标题发光变色 |
十、最终配置清单
一口气改动汇总:
| # | 改动项 | 配置字段 |
|---|---|---|
| 1 | 开启预加载动画 | preloader.enable: true |
| 2 | 点击涟漪效果 | 自定义 JS + CSS |
| 3 | 默认暗色模式 | display_mode: dark |
| 4 | 固定导航栏 | nav.fixed: true |
| 5 | Mac 风格代码块 | code_blocks.macStyle: true |
| 6 | 侧边栏最近文章 | card_recent_post.enable: true |
| 7 | 侧边栏最新评论 | card_newest_comments.enable: true |
| 8 | 头像旋转动效 | avatar.effect: true |
| 9 | 头像转速减慢 | CSS 覆盖 |
| 10 | 关闭不蒜子 | busuanzi 全部 false |
总结
这 10 项改动,每一项都只需要改配置或加几行代码,不用动主题源码,Butterfly 主题升级不受影响。
核心思路:在克制中提升质感。技术博客的读者是来看内容的,视觉效果要做的是”让人待得舒服”而不是”炫技”。动态太多反而分散注意力——所以我们选了涟漪而不是烟花,选了慢速头像旋转而不是更多弹跳动画。
博客永远在打磨的路上,有新想法再分享。





