自定义hexo-theme-matery主题之路

包括了自定义字体、点击效果等等

请注意,本文编写于 152 天前,最后修改于 55 天前,其中某些信息可能已经过时。

需要注意,本文章为老版本博客所用 具体请移步致 https://blog5.yyvhc.com/posts/29975/

目录

  • 全局自定义字体
  • 局部自定义字体
  • 修改鼠标点击效果
  • 隐藏文章分享按钮

全局自定义字体

1.在hexo根目录找到 sourcefont 文件(没有就创建一个,名字也可以自定义)
2.找到 themesmaterysourcecssmy.css 粘贴以下代码进去即可

@font-face{
    font-family: '字体名字';
    src: url('../font/你的字体.ttf');
}

body{
    font-family: '字体名字';
}

局部自定义字体

1.当想要指定某个地方的字体自定义时候,可以通过右键审查元素找到那个字体的类,给于或者在原有的类下面给于属性即可。

例子-修改banner标题字体

由于banner标题的字体的类跟“关于我”的名字是一样的,所以需要自己单独给于banner标题一个类。
找到themesmaterylayout_partialbg-cover-content.ejs

<div class="row">
    <div class="col s10 offset-s1 m8 offset-m2 l8 offset-l2">
        <div class="brand">
            <div class="title center-align 你的类">
                <% if (config.subtitle && config.subtitle.length > 0) { %>
                    <%= config.subtitle %>
                <% } else { %>
                    subtitle
                <% } %>
            </div>

在这里增加你自己diy的类,比如

<div class="row">
    <div class="col s10 offset-s1 m8 offset-m2 l8 offset-l2">
        <div class="brand">
            <div class="title center-align diy-font">
                <% if (config.subtitle && config.subtitle.length > 0) { %>
                    <%= config.subtitle %>
                <% } else { %>
                    subtitle
                <% } %>
            </div>

之后的方法跟全局自定义字体一样,只不过需要将原本直接给body的属性变成给你设置的类,比如

@font-face{
    font-family: '字体名字';
    src: url('../font/你的字体.ttf');
}

.diy-font{
    font-family: '字体名字';
}

修改鼠标点击效果

在主题配置文件_config.yml搜索爱心找到

clicklove:
  enable: true

修改成

clicklove:
  enable: false

之后在themesmaterysourcejsmatery.js添加你想要的点击效果

以下是我自己用的点击效果

//定义获取词语下标
var a_idx = 0;
jQuery(document).ready(function($) {
        //点击body时触发事件
    $("body").click(function(e) {
    //需要显示的词语
    var a = new Array("咕咕","马上到", "我来了", "绝对不咕","来了来了", "下次绝对不咕", "谁咕谁不是人");
    //设置词语给span标签
    var $i = $("<span/>").text(a[a_idx]);
    //下标等于原来下标+1  余 词语总数
    a_idx = (a_idx + 1)% a.length;
    //获取鼠标指针的位置,分别相对于文档的左和右边缘。
    //获取x和y的指针坐标
    var x = e.pageX, y = e.pageY;
    //在鼠标的指针的位置给$i定义的span标签添加css样式
    $i.css({"z-index" : 999999999999999999999999999999999999999999999999999999999999999999999,
        "top" : y - 20,
        "left" : x,
        "position" : "absolute",
        "font-weight" : "bold",
        "color" : "#ff6651"
        });
    //在body添加这个标签
    $("body").append($i);
        //animate() 方法执行 CSS 属性集的自定义动画。
        //该方法通过CSS样式将元素从一个状态改变为另一个状态。CSS属性值是逐渐改变的,这样就可以创建动画效果。
        //详情请看http://www.w3school.com.cn/jquery/effect_animate.asp
        $i.animate({
        //将原来的位置向上移动180
            "top" : y - 180,
                "opacity" : 0
         //1500动画的速度
        }, 1500, function() {
        //时间到了自动删除
            $i.remove();
        });
    });
});

隐藏文章分享按钮

直接在themesmaterysourcecssmy.css里面添加

#article-share{display: none;}

即可,相信大家都懂,简单粗暴。

添加新评论

评论列表