基本配置
此博客采用 hexo + butterfly 搭建
butterfly版本是4.3.1
安装环境
参考:【2021最新版】保姆级Hexo+github搭建个人博客_哔哩哔哩_bilibili
如果有问题,参考Hexo+github搭建个人博客 | 武师叔 (wushishu.xyz)
安装主题并配置
安装butterfly并配置参考官方文档 Butterfly - A Simple and Card UI Design theme for Hexo
在 blog 的根目录创建一个文件 _config.butterfly.yml
,并把主题目录的 _config.yml
即blog/themes/butterfly/_config.yml
,内容复制到 _config.butterfly.yml
去
配置在 _config.butterfly.yml
修改即可
魔改部分
参考hexo-butterfly魔改记录大全 | Black Flies (yyyzyyyz.cn)
我只用了其中的部分
blog/source目录下创建css文件夹,创建custom.css文件
实现H1~H6标题前带一个小图标
Butterfly 在 H1~H6 样式上使用了 Search v5 Icons | Font Awesome 上的图标,引用的是 Unicode 形式。可自行查找合适的。
beautify: enable: true field: post title-prefix-icon: '\f863' title-prefix-icon-color: '#F47466'
|
给 H1~H6 标题前,不同大小的图标设置不同颜色
在blog/source/css/custom.css
写入
#content-inner.layout h1::before { color: #ef50a8 ; margin-left: -1.55rem; font-size: 1.3rem; margin-top: -0.23rem; } #content-inner.layout h2::before { color: #fb7061 ; margin-left: -1.35rem; font-size: 1.1rem; margin-top: -0.12rem; } #content-inner.layout h3::before { color: #ffbf00 ; margin-left: -1.22rem; font-size: 0.95rem; margin-top: -0.09rem; } #content-inner.layout h4::before { color: #a9e000 ; margin-left: -1.05rem; font-size: 0.8rem; margin-top: -0.09rem; } #content-inner.layout h5::before { color: #57c850 ; margin-left: -0.9rem; font-size: 0.7rem; margin-top: 0.0rem; } #content-inner.layout h6::before { color: #5ec1e0 ; margin-left: -0.9rem; font-size: 0.66rem; margin-top: 0.0rem; }
|
实现整个头图背景页脚一图流
在blog/source/css/custom.css
写入
#footer{ background: transparent!important; }
#page-header{ background: transparent!important; }
#page-header:not(.not-top-img):before { background-color: transparent!important; }
#footer, #footer:before { background: transparent!important }
[data-theme="dark"] #footer::before{ background: transparent!important; } [data-theme="dark"] #page-header::before{ background: transparent!important; }
|
最后在主题配置中inject引入css文件
inject: head: - <link rel="stylesheet" href="/css/custom.css">
|
blog/source下新建js文件夹,新建rdmbkg.js文件
实现随机背景
在blog/source/js/rdmbkg.js
写入
var backimg =[ "url(/img/bg1.JPG)", "url(/img/bg2.jpg)", "url(/img/bg3.jpg)", "url(/img/bg4.jpg)" ];
var bgindex =Math.floor(Math.random() * (backimg.length));
document.getElementById("web_bg").style.backgroundImage = backimg[bgindex];
var bannerimg =[ "url(/img/bg1.JPG)", "url(/img/bg2.jpg)", "url(/img/bg3.jpg)", "url(/img/bg4.jpg)" ];
var bannerindex =Math.ceil(Math.random() * (bannerimg.length-1));
document.getElementById("page-header").style.backgroundImage = bannerimg[bannerindex];
|
主题配置文件中引入js
inject: head: bottom: - <script async data-pjax src="/js/rdmbkg.js"></script>
|
实现效果
我的博客