typecho基于handsome的一些美化修改内容

本片文章是采集自其他博客博主的帖子内容
使用主题名字:handsome 地址 https://www.ihewro.com/archives/489/
handsome主题介绍:https://www.ihewro.com/archives/489/点击前往查看介绍
本次优化的内容只需要在后台设置 开发者设置-自定义css中 添加代码即可

1. 头像呼吸光环和鼠标悬停旋转放大

请输入图片描述

.img-full {
    width: 100px;
    border-radius: 50%;
    animation: light 4s ease-in-out infinite;
    transition: 0.5s;
}

.img-full:hover {
    transform: scale(1.15) rotate(720deg);
}

@keyframes light {
    0% {
        box-shadow: 0 0 4px #f00;
    }

    25% {
        box-shadow: 0 0 16px #0f0;
    }

    50% {
        box-shadow: 0 0 4px #00f;
    }

    75% {
        box-shadow: 0 0 16px #0f0;
    }

    100% {
        box-shadow: 0 0 4px #f00;
    }
}

如果只需要单色呼吸光环,例如红色,可以将关键帧动画改为:

@keyframes light {
    from {
        box-shadow: 0 0 4px #f00;
    }

    to {
        box-shadow: 0 0 16px #f00;
    }
}

2. 左侧文章图标和评论头像鼠标悬停旋转

请输入图片描述

.img-circle {
    transition: all 0.3s;
}

.img-circle:hover {
    transform: rotate(360deg);
}

3. 文章内打赏图标跳动

请输入图片描述

.btn-pay {
    animation: star 0.5s ease-in-out infinite alternate;
}

@keyframes star {
    from {
        transform: scale(1);
    }

    to {
        transform: scale(1.1);
    }
}

4. 彩色标签云

请输入图片描述

之前看过一个彩色标签云的插件,这里用js为标签随机添加上预先定义的颜色,每次刷新都会进行换色:

let tags = document.querySelectorAll("#tag_cloud-2 a");
let colorArr = ["#428BCA", "#AEDCAE", "#ECA9A7", "#DA99FF", "#FFB380", "#D9B999"];
tags.forEach(tag => {
    tagsColor = colorArr[Math.floor(Math.random() * colorArr.length)];
    tag.style.backgroundColor = tagsColor;
});

如果主题中启用了pjax,还需要将上面代码添加到pjax-pjax回调函数中。

5. 首页文章列表悬停上浮

请输入图片描述

.blog-post .panel-small:not(article),
.blog-post .panel:not(article) {
    transition: all 0.3s;
}

.blog-post .panel-small:not(article):hover,
.blog-post .panel:not(article):hover {
    transform: translateY(-10px);
    box-shadow: 0 8px 10px rgba(73, 90, 47, 0.47);
}
/* 2019/11/20更新 兼容大/小头图模式和交错模式 */

6. 首页文章列表头图悬停放大并将超出范围隐藏

请输入图片描述

.index-post-img {
    overflow: hidden;
}

.item-thumb,
.item-thumb-small {
    transition: all 0.3s;
}

.item-thumb:hover,
.item-thumb-small:hover {
    transform: scale(1.1)
}
/* 2019/11/20更新 兼容大/小头图模式和交错模式 */

7. 文章内头图和文章图片悬停放大并将超出范围隐藏

请输入图片描述

.entry-thumbnail {
    overflow: hidden;
}

#post-content img {
    border-radius: 10px;
    transition: 0.5s;
}

#post-content img:hover {
    transform: scale(1.05);
}

8. 页面顶部进度条

请输入图片描述

handsome/component/header.php文件中最下面添加代码:

<div class="progress-top" style="position: fixed; top: 0px; height: 5px; background: rgba(31, 159, 199, 0.79); border-radius: 500px; z-index: 5200;"></div>

然后在后台开发者设置-自定义JavaScript中添加js代码:

let pageHeight = document.body.scrollHeight || document.documentElement.scrollHeight;
let windowHeight = document.documentElement.clientHeight || document.body.clientHeight;
let scrollAvail = pageHeight - windowHeight;
window.onscroll = function () {
    let scrollTop = document.documentElement.scrollTop || document.body.scrollTop;
    document.querySelector('.progress-top').style.width = (scrollTop / scrollAvail) * 100 + '%';
}

同样,如果主题开启了pjax,也需要在pjax回调函数填写上面代码。

9. 右侧列表导航栏图标颜色

请输入图片描述

.glyphicon-fire {
    color: #ff0000;
}

.nav-tabs-alt .glyphicon-comment {
    color: #495dc3;
}

.glyphicon-transfer {
    color: #0e5458;
}

10. 点击空白区域隐藏歌曲列表

请输入图片描述

主题中原来是必须重新点击耳机图标才能将歌曲列表隐藏,感觉有点累,而且此时再点击闲言碎语会将两个元素重叠。设置之后可以点击空白区域将歌曲列表隐藏,由于本文主旨是尽量不修改源码,所以实现的方式较为繁琐。先添加css:

.musicPlayerHiden {
    display: none;
}

然后添加js代码:

document.body.onclick = function () {
    document.querySelector(".skPlayer-list").classList.add("musicPlayerHiden");
}

document.querySelector(".skPlayer-list-switch").onclick = function (e) {
    document.querySelector(".skPlayer-list").classList.remove("musicPlayerHiden");
    document.querySelector(".skPlayer-list").onclick = function (e) {
        if (e && e.stopPropagation) {
            e.stopPropagation();
        } else {
            window.event.cancalBubble = true;
        }
    }

    if (e && e.stopPropagation) {
        e.stopPropagation();
    } else {
        window.event.cancalBubble = true;
    }
}

11. 将回到顶部按钮下移

个人感觉看完文章视线是在屏幕下半区域的,所以将回到顶部按钮往下移动了一些。

.topButton {
    top: 640px;
}

[scode type="green"]本篇内容转载出处是大西瓜博客: https://www.bwmelon.com/archives/31/ [/scode]

[button color="success" icon="" url="https://www.bwmelon.com/archives/31/" type=""]点击前往[/button]

阅读全文
除特别注明外,本站所有文章均基于CC-BY-NC-SA 4.0原创,转载请注明出处。
文章名称:《typecho基于handsome的一些美化修改内容》
文章链接:https://www.mrgod.cn/50.html
分享到: 生成海报

评论 抢沙发

评论前必须登录!

立即登录   注册

简简单单,做好记录

切换注册

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活