通过shields.io在线生成。
输入相关信息后,点击make badge
即可得到徽标的URL。可以用img标签引用,写法简单。不过正式写法建议用object标签引用,写法示例如下。
拓展写法示例
在[Blogroot]\_config.butterfly.yml
的footer
配置项中添加徽标,注意事先压缩一下,使他们只留一行。为了不至于太过紧凑,设置一下行内间隔属性margin-inline
。
修改[Blogroot]\themes\butterfly\layout\includes\footer.pug
,添加页脚标签循环节:
在[Blogroot]\_config.butterfly.yml
中添加相关配置项:
考虑到对shields.io的全部参数支持,外挂标签使用object
标签来引用。
新建
function bdage (args) {
args = args.join(' ').split('||')
let base= args[0]?args[0].split(','):''
let right = base[0]?encodeURI(base[0].trim()):''
let left = base[1]?encodeURI(base[1].trim()):''
let logo = base[2]?base[2].trim():''
let message = args[1]?args[1].split(','):''
let color = message[0]?message[0].trim():'orange'
let link = message[1]?message[1].trim():''
let title = message[2]?message[2].trim():''
let option = args[2]?args[2].trim():''
return `<object title="${title}" standby="loading..." data="https://img.shields.io/badge/${left}-${right}-orange?logo=${logo}&color=${color}&link=${link}&${option}"></object>`
}
hexo.extend.tag.register('bdage',bdage);
具体用法
这一段参考自paddylin-Butterfly脚底自定义标签
在使用徽标时,偶尔会遇到需要在内部写入动态内容的情况,这时候再使用shields.io提供的标签就无法满足我们的需求了。所以就要使用HTML
语言配合CSS
来仿写标签。
<div class="github-badge">
<a style="color:#fff" href="https://hexo.io/" target="_blank" title="由 Hexo 强力驱动">
<span class="badge-subject">
<!-- fa图标,也支持阿里图标 -->
<i class="fa fa-copyright"></i>
Powered
</span>
<span class="badge-value bg-blue">
Hexo
</span>
</a>
</div>
/*标签整体样式*/
.github-badge {
margin-left: 5px;
display: inline-block;
border-radius: 4px;
text-shadow: none;
color: #fff;
line-height: 15px;
background-color: #abbac3;
margin-bottom: 5px;
font-size: 12px;
}
/* 超链接下划线隐藏 */
.github-badge a {
text-decoration: none;
}
/* 标签左侧样式 */
.github-badge .badge-subject {
background-color: #4d4d4d;
padding: 4px 4px 4px 6px;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
}
/* 标签右侧样式 */
.github-badge .badge-value {
padding: 4px 6px 4px 4px;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
}
/* 标签背景色,随意自定义,渐变色也可以 */
.github-badge .bg-blue {
background-color: #007ec6;
}
.github-badge .bg-green {
background-color: #4dc820;
}
.github-badge .bg-orange {
background-color: orange;
}
.github-badge .bg-gradient {
background: linear-gradient(to right, #3ca5f6, #a86af9);
}
.github-badge .bg-violet {
background-color: #8833d7;
}