早期人类驯服博客主题

前言

回顾我写博客不长的经历:从最早自己租服务器买域名基于 WordPress 搭了个博客,因为懒得维护和水平太差很快就废弃了;再后来用前端三剑客纯手写博客页面,很快因为相同的原因(对了,还得多加一个原因:丑陋)又废弃了;然后转向其他博客平台例如 CSDN 写一些技术博客,除了广告多点还算勉勉强强,反正纯技术博客写完没事我自己都不怎么会去看;之后投向 Github Page 的怀抱,才算是安定下来。刚部署好那阵访问速度还是个问题,现在估计也设了国内服务器,访问速度已经快了很多

前端菜鸟当然还是使用已有的主题最便捷,但是想在前辈们写好的主题下做一些 DIY 可是不太容易。昨天又因为想自己加点东西而被困扰许久,想着开一篇博文记录我和博客主题斗智斗勇的“爱恨情仇”吧

Chic

Chic 是我用过的第一个主题,也一直用到现在(2021-07-25留)

Chic 让我深刻感受到前端设计师的审美能力和技术水平,这主题简约但又不至于简陋,该有的功能基本都有,我相当满意!

加新的iconfont

在配置文件 _config.yml 中可以选择在首页展示的链接图标:Twitter、QQ、微博啥的,只要在配置文件中取消对应行上的注释并加链接就行

1
2
# main menu navigation
## links key words should not be changed.

注释里说不要修改链接的关键字。但我想把 lofter 的图标加在首页上,这在预设里是没有的。作为一个强迫症我一定得把新图标加上!于是乎开始折腾

从已知世界出发

在首页源码里看到图标用 unicode 表示了,想着图标应该是在什么 fonts 之类的文件夹里。在主题文件夹下搜索之后发现了 iconfont 文件夹,这事有门儿!

文件夹下有 .js .css .svg 还有一堆字体文件 .ttf .woff .woff2 .eot

打开.js .css .svg 发现预设的图标里面都有相应内容,于是依葫芦画瓢都在后面添上一份 lofter 版的(ps:我用的 lofter 图标来自阿里巴巴矢量图标库

重新生成、重新启动服务!果不其然失败了 …… 本来应该显示 lofter 图标的位置空无一物

探索字体的世界

我能看懂的部分都改了,所以这肯定是那些字体文件搞得鬼!可是我以前从来没有编辑过字体文件,先去找找工具:发现了一个超好用的轻量级在线字体编辑器 FontEditor

这可是个好东西,帮我看清了那些 .ttf .woff .woff2 .eot 的内部构造

简单看了看文档,把 lofter 图标编入字体文件中,然后生成、下载、替换

重新生成、重新启动服务!果不其然又失败了 …… 本来应该显示 lofter 图标的位置空无一物

这下可给我整不会了,怎么我都换字体文件了还一点变化没有???

开始瞎搞

我开始这里看看、那里改改,然后观察有没有发生变化(原始人类实锤!不过我还是有做备份的,不要莽)在 demo.css 里我修改了字体文件路径,然后 demo 页面可以正常显示 lofter 图标了!然而相同的操作并没有在实际页面中生效,我想我可能得放弃了……

福至心灵

要不怎么说强迫症呢,能轻易妥协都不能说是强迫症。在干了点别的事儿之后我又来折腾这个图标了。这回我大胆假设、小心求证、控制变量、逐步逼近真相。终于让我发现只要我改动 iconfont.css.woff2 的 url 指向,页面图标就会全部消失,看来最终起作用的字体文件应该就是它

在搜索了这一行引入的含义之后,我发现 base64 后面的那串超长乱码就是 .woff2 文件编码所得。由于手头的机子没有 base64 编码工具,就找了个转码工具 Woff2Base

替换编码之后 lofter 图标果然成功显示了!但是看上去比别的图标大了一点。想到设置显示的大小都是一样的,估计问题出在图标本身。再用 FontEditor 对图标重新缩放一下好了。用了和 Github 图标一样的尺寸,强迫症表示这下终于舒服了!


早期人类驯服博客主题
https://jjydxfs.github.io/2021/07/25/早期人类驯服博客主题/
作者
JJYDXFS
发布于
2021年7月25日
许可协议