From ade4f44faa40abb5ed5eb56d30dc21fc3e60f20b Mon Sep 17 00:00:00 2001 From: Mimi <1119186082@qq.com> Date: Fri, 29 May 2020 23:11:16 +0800 Subject: [PATCH] Optimize link-grid & fix pandoc rendering error --- scripts/tags/button.js | 4 +-- scripts/tags/link-grid.js | 22 ++++++++---- scripts/tags/mermaid.js | 6 ++-- .../_common/scaffolding/tags/link-grid.styl | 34 +++++++++---------- 4 files changed, 37 insertions(+), 29 deletions(-) diff --git a/scripts/tags/button.js b/scripts/tags/button.js index a77d306..4962fc0 100644 --- a/scripts/tags/button.js +++ b/scripts/tags/button.js @@ -23,8 +23,8 @@ function postButton(args) { title = title.trim(); return ` 0 ? ` title="${title}"` : ''}> - ${icon.length > 0 ? `` : ''}${text} - `; +${icon.length > 0 ? `` : ''}${text} +`; } hexo.extend.tag.register('button', postButton, {ends: false}); diff --git a/scripts/tags/link-grid.js b/scripts/tags/link-grid.js index ea464a4..da83cf8 100644 --- a/scripts/tags/link-grid.js +++ b/scripts/tags/link-grid.js @@ -1,16 +1,24 @@ +/** + * link-grid.js | https://theme-next.js.org/docs/tag-plugins/link-grid + */ + /* global hexo */ 'use strict'; function linkGrid(args, content) { + const image = args[0] || '/images/avatar.gif'; + const delimiter = args[1] || '|'; + const comment = args[2] || '%'; + const links = content.split('\n').map(item => { - const args = item.split('|').map(arg => arg.trim()); - if (args[0][0] === '%') return ''; - return `
`; + item = item.split(delimiter).map(arg => arg.trim()); + if (item[0][0] === comment) return ''; + return ``; }); return `
- ${args.join(' ')}
- ${content}
- `;
+${args.join(' ')}
+${content}
+`;
}
hexo.extend.tag.register('mermaid', mermaid, {ends: true});
diff --git a/source/css/_common/scaffolding/tags/link-grid.styl b/source/css/_common/scaffolding/tags/link-grid.styl
index aadc0f9..4aeb09e 100644
--- a/source/css/_common/scaffolding/tags/link-grid.styl
+++ b/source/css/_common/scaffolding/tags/link-grid.styl
@@ -3,39 +3,39 @@
grid-gap: 1.5rem 1.5rem;
grid-template-columns: 1fr 1fr;
padding: 1.5rem;
- user-select: none;
+mobile() {
grid-template-columns: 1fr;
}
- div {
- border: solid #ddd;
- box-shadow: 1rem 1rem 0.5rem gray;
+ .link-grid-container {
+ border: solid $grey-lighter;
+ box-shadow: 1rem 1rem .5rem gray;
height: 5rem;
- transition: background 0.3s;
- padding: 0.5rem;
+ padding: .5rem;
position: relative;
+ transition: background .3s;
&:hover {
- animation: shake 0.5s;
- background: rgba(230,244,250,.5);
+ animation: shake .5s;
+ background: rgba(230, 244, 250, .5);
}
&:active {
- box-shadow: 0.5rem 0.5rem 0.25rem gray;
- transform: translate(0.2rem, 0.2rem);
+ box-shadow: .5rem .5rem .25rem gray;
+ transform: translate(.2rem, .2rem);
}
- img {
- border: 1px solid #ddd;
+ .link-grid-image {
+ background-clip: content-box;
+ background-origin: content-box;
+ background-size: cover;
+ border: 1px solid $grey-lighter;
border-radius: 50%;
box-sizing: border-box;
height: 5rem;
- left: 0.5rem;
padding: 3px;
position: absolute;
- top: 0.5rem;
width: 5rem;
}
@@ -47,14 +47,14 @@
}
&:last-of-type {
- font-size: 0.8em;
+ font-size: .8em;
line-height: 1.3rem;
- opacity: 0.7;
+ opacity: .7;
}
}
a {
- border: none;
+ border: 0;
height: 100%;
left: 0;
position: absolute;