如何自定义Jekyll默认Minima主题的样式?
解决Jekyll Minima主题样式无法永久修改的问题
嘿,我完全懂你遇到的困扰——修改_site里的CSS确实只能临时生效,因为这个目录是Jekyll构建后生成的静态文件目录,每次你运行jekyll serve或者jekyll build,Jekyll都会重新生成整个_site文件夹,直接把你之前改的内容覆盖掉。要永久修改Minima的样式,得从源文件入手,这里有两种靠谱的方案:
方法一:添加自定义CSS文件(推荐,不破坏主题源码)
这是最安全的方式,后续主题更新也不会影响你的自定义样式:
- 在你的项目根目录下创建
/assets/css/main.scss文件 - 在文件开头先导入Minima的默认样式,再写你的自定义规则覆盖默认设置,示例代码如下:
--- --- @import "minima"; /* 自定义背景色示例 */ body { background-color: #f5f5f5; /* 换成你想要的颜色值 */ } /* 还可以修改其他样式,比如标题颜色 */ h1, h2, h3 { color: #2c3e50; }
- 这里顶部的
---是Jekyll要求的YAML前端标记,必须保留,否则文件不会被正确处理。导入默认样式后,你写的自定义规则会因为CSS优先级覆盖默认样式。
方法二:复制主题源码到项目中修改(不推荐,仅深度定制时用)
如果你需要大幅修改主题的核心样式,可以把Minima的源文件复制到自己的项目里:
- 先找到Minima主题的安装目录,运行命令:
bundle show minima
- 找到目录下的
assets/css文件夹,把它完整复制到你的项目根目录的相同路径下(也就是你的项目里也会有/assets/css) - 现在你修改项目里
/assets/css下的文件,Jekyll构建时会优先使用你项目里的文件,而不是主题自带的,这样修改就会永久生效了。
注意:这种方法的缺点是,如果后续Minima主题更新,你复制的文件不会同步更新,可能会出现兼容性问题,所以优先推荐第一种方法。
修改完成后,重新运行jekyll serve,你就能看到永久生效的样式了!
内容的提问来源于stack exchange,提问作者James Karran
相关产品推荐
相关产品推荐

