效果预览  
              
             
步骤 修改主题的配置文件 _config.butterfly.yml,将index_img和footer_bg的参数改为transparent,background设置为自己的图片地址
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 index_img:  transparent background:  url(https://example.com/img/background.jpg) footer_bg:  transparent 
 
新建一个文件,位于 source/css/modify.styl,写入下列代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 @import  'nib' // 顶部图 #page-header   &, &:before     background : transparent !important   &.post-bg, &.not-home-page     height : 280px  !important   #post-info     bottom : 40px  !important   #page-site-info     top : 140px  !important   @media screen and  (max-width : 768px )     &.not-home-page       height : 200px  !important     #post-info       bottom : 10px  !important     #page-site-info       top : 100px  !important .top-img   height : 250px    margin : -50px  -40px  50px    border-top-left-radius : inherit   border-top-right-radius : inherit   background-position : center center   background-size : cover   transition : all 0.3s    @media screen and  (max-width : 768px )     height : 230px      margin : -36px  -14px  36px    [data-theme='dark' ] &     filter : brightness(0.8 ) // 页脚 #footer :before   background-color : alpha(#FFF, .5 )   [data-theme='dark' ] &     background-color : alpha(#000 , .5 ) #footer-wrap, #footer-wrap a   color : #111    transition : unset   [data-theme='dark' ] &     color : var(--light-grey) 
 
在主题配置文件 _config.butterfly.yml 的 inject.head 引入样式
注:modify.styl 会被 Hexo 渲染成 modify.css 文件,所以此处应为 modify.css
1 2 3 4 5 6 7 8 9 # other (其他) # -------------------------------------- # Inject # Insert the code to head (before '</head > ' tag) and the bottom (before '</body > ' tag) # 插入代码到头部 </head >  之前 和 底部 </body >  之前 inject:   head:     - <link  rel ="stylesheet"  href ="/css/modify.css" >  
 
在博客根目录打开cmd,安装依赖
 
新建一个文件,位于 scripts/modify.js,并写入下列代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 'use strict' ;const  cheerio = require ('cheerio' );function  insertTopImg ($ ) {    let  header = $('#page-header' );     if  (header.length  === 0 ) return ;     let  background = header.css ('background-image' );     if  (!background) return ;     $('#post, #page, #archive, #tag, #category' ).prepend (`<div class="top-img" style="background-image: ${background} ;"></div>` ); } hexo.extend .filter .register ('after_render:html' , function (str, data ) {     let  $ = cheerio.load (str, {         decodeEntities : false      });     insertTopImg ($);     return  $.html (); }); 
 
hexo三连~