hexo-theme-stellar 1.22.1 → 1.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/_config.yml +21 -9
- package/_data/widgets.yml +3 -0
- package/languages/en.yml +1 -0
- package/languages/zh-CN.yml +1 -0
- package/languages/zh-TW.yml +1 -0
- package/layout/_partial/head.ejs +29 -19
- package/layout/_partial/main/article/article_footer.ejs +16 -5
- package/layout/_partial/main/footer.ejs +18 -24
- package/layout/_partial/main/navbar/author_banner.ejs +31 -0
- package/layout/_partial/main/navbar/breadcrumb.ejs +20 -4
- package/layout/_partial/main/post_list/post_card.ejs +13 -1
- package/layout/_partial/plugins/comments/giscus/script.ejs +0 -1
- package/layout/_partial/plugins/parser/head.ejs +3 -0
- package/layout/_partial/plugins/parser/katex/head.ejs +3 -0
- package/layout/_partial/plugins/parser/katex/script.ejs +4 -0
- package/layout/_partial/plugins/parser/mathjax/script.ejs +20 -0
- package/layout/_partial/plugins/parser/mermaid/script.ejs +29 -0
- package/layout/_partial/plugins/parser/script.ejs +9 -0
- package/layout/_partial/scripts/index.ejs +19 -5
- package/layout/_partial/sidebar/index.ejs +1 -1
- package/layout/_partial/widgets/markdown.ejs +7 -2
- package/layout/_partial/widgets/toc.ejs +1 -1
- package/layout/archive.ejs +54 -37
- package/layout/page.ejs +1 -4
- package/layout/post.ejs +1 -7
- package/layout/wiki.ejs +1 -4
- package/package.json +1 -1
- package/scripts/events/index.js +2 -0
- package/scripts/events/lib/authors.js +21 -0
- package/scripts/events/lib/doc_tree.js +1 -2
- package/scripts/events/lib/links.js +17 -0
- package/scripts/generators/author.js +22 -0
- package/scripts/tags/index.js +5 -0
- package/scripts/tags/lib/albums.js +47 -0
- package/scripts/tags/lib/audio.js +23 -0
- package/scripts/tags/lib/copy.js +11 -13
- package/scripts/tags/lib/friends.js +13 -24
- package/scripts/tags/lib/gallery.js +6 -5
- package/scripts/tags/lib/grid.js +30 -30
- package/scripts/tags/lib/md.js +20 -0
- package/scripts/tags/lib/posters.js +47 -0
- package/scripts/tags/lib/sites.js +15 -24
- package/scripts/tags/lib/swiper.js +1 -1
- package/scripts/tags/lib/video.js +23 -0
- package/source/css/_common/media.styl +9 -0
- package/source/css/_common/toast.styl +25 -5
- package/source/css/_custom.styl +2 -1
- package/source/css/_defines/func.styl +11 -0
- package/source/css/_defines/theme.styl +2 -2
- package/source/css/_layout/list.styl +10 -12
- package/source/css/_layout/main.styl +4 -0
- package/source/css/_layout/md.styl +3 -0
- package/source/css/_layout/pages/archives.styl +10 -10
- package/source/css/_layout/partial/bread-nav.styl +3 -5
- package/source/css/_layout/partial/cover.styl +1 -0
- package/source/css/_layout/partial/navbar.styl +5 -5
- package/source/css/_layout/tag-plugins/banner.styl +24 -10
- package/source/css/_layout/tag-plugins/copy.styl +16 -13
- package/source/css/_layout/tag-plugins/folding.styl +6 -0
- package/source/css/_layout/tag-plugins/friends.styl +10 -37
- package/source/css/_layout/tag-plugins/gallery.styl +32 -15
- package/source/css/_layout/tag-plugins/grid.styl +3 -10
- package/source/css/_layout/tag-plugins/link.styl +2 -5
- package/source/css/_layout/tag-plugins/note.styl +7 -0
- package/source/css/_layout/tag-plugins/sites.styl +11 -39
- package/source/css/_layout/tag-plugins/tabs.styl +2 -0
- package/source/css/_layout/widgets/ghrepo.styl +1 -4
- package/source/css/_layout/widgets/toc_common.styl +22 -8
- package/source/css/_plugins/copycode.styl +18 -16
- package/source/css/_plugins/fancybox.styl +1 -4
- package/source/css/_plugins/index.styl +1 -1
- package/source/css/_plugins/lazyload.styl +4 -4
- package/source/js/main.js +7 -9
- package/source/js/plugins/copycode.js +1 -1
- package/source/js/plugins/friends.js +11 -11
- package/source/js/plugins/marked.js +50 -0
- package/source/js/plugins/sites.js +13 -14
- package/_data/links.yml +0 -7
- package/layout/mathjax.ejs +0 -29
- package/layout/mermaid.ejs +0 -32
|
@@ -9,10 +9,6 @@
|
|
|
9
9
|
|
|
10
10
|
module.exports = ctx => function(args) {
|
|
11
11
|
args = ctx.args.map(args, ['repo', 'api'], ['group'])
|
|
12
|
-
var links = ctx.locals.get('data').links
|
|
13
|
-
if (links == undefined) {
|
|
14
|
-
links = {}
|
|
15
|
-
}
|
|
16
12
|
var api
|
|
17
13
|
if (args.api) {
|
|
18
14
|
api = args.api
|
|
@@ -25,30 +21,25 @@ module.exports = ctx => function(args) {
|
|
|
25
21
|
el += '<div class="stellar-sites-api"'
|
|
26
22
|
el += ' api="' + api + '"'
|
|
27
23
|
el += '>'
|
|
28
|
-
el += '<div class="
|
|
24
|
+
el += '<div class="grid-box"></div>'
|
|
29
25
|
el += '</div>'
|
|
30
26
|
} else if (args.group) {
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
27
|
+
const links = ctx.theme.config.links || {}
|
|
28
|
+
el += '<div class="grid-box">'
|
|
29
|
+
for (let item of (links[args.group] || [])) {
|
|
30
|
+
if (item?.url && item?.title) {
|
|
31
|
+
el += `<div class="grid-cell site-card">`
|
|
32
|
+
el += `<a class="card-link" target="_blank" rel="external nofollow noopener noreferrer" href="${item.url}">`
|
|
33
|
+
el += `<img src="${item.cover || item.screenshot || ('https://api.vlts.cc/screenshot?url=' + item.url + '&width=1280&height=720')}" onerror="javascript:this.removeAttribute("data-src");this.src="${ctx.theme.config.default.cover}";"/>`
|
|
34
|
+
el += `<div class="info">`
|
|
35
|
+
el += `<img src="${item.icon || item.avatar || ctx.theme.config.default.link}" onerror="javascript:this.removeAttribute("data-src");this.src="${item.icon || item.avatar || ctx.theme.config.default.link}";"/>`
|
|
36
|
+
el += `<span class="title">${item.title}</span>`
|
|
37
|
+
el += `<span class="desc">${item.description || item.url}</span>`
|
|
38
|
+
el += `</div>`
|
|
39
|
+
el += `</a>`
|
|
40
|
+
el += `</div>`
|
|
45
41
|
}
|
|
46
42
|
}
|
|
47
|
-
el += '<div class="group-body">'
|
|
48
|
-
const items = links[args.group] || []
|
|
49
|
-
items.forEach((item, i) => {
|
|
50
|
-
el += cell(item)
|
|
51
|
-
})
|
|
52
43
|
el += '</div>'
|
|
53
44
|
}
|
|
54
45
|
|
|
@@ -22,7 +22,7 @@ module.exports = ctx => function(args, content) {
|
|
|
22
22
|
})
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
el += '<div class="tag-plugin swiper" id="swiper-api"'
|
|
25
|
+
el += '<div class="tag-plugin swiper fancybox" id="swiper-api"'
|
|
26
26
|
el += ' ' + ctx.args.joinTags(args, ['width', 'effect']).join(' ')
|
|
27
27
|
el += '>'
|
|
28
28
|
el += '<div class="swiper-wrapper">'
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* video.js v1.0 | https://github.com/xaoxuu/hexo-theme-stellar/
|
|
3
|
+
* 格式与官方标签插件一致使用空格分隔,中括号内的是可选参数(中括号不需要写出来)
|
|
4
|
+
*
|
|
5
|
+
* {% video src %}
|
|
6
|
+
*
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
'use strict';
|
|
10
|
+
|
|
11
|
+
module.exports = ctx => function(args) {
|
|
12
|
+
args = ctx.args.map(args, ['type'], ['src'])
|
|
13
|
+
if (args.type == null) {
|
|
14
|
+
args.type = 'video/mp4'
|
|
15
|
+
}
|
|
16
|
+
return `
|
|
17
|
+
<div class="tag-plugin video">
|
|
18
|
+
<video controls preload>
|
|
19
|
+
<source src="${args.src}" type="${args.type}">Your browser does not support the video tag.
|
|
20
|
+
</video>
|
|
21
|
+
</div>
|
|
22
|
+
`
|
|
23
|
+
}
|
|
@@ -1,16 +1,36 @@
|
|
|
1
1
|
div.toast
|
|
2
2
|
max-width: 60%
|
|
3
|
-
padding: 1rem
|
|
3
|
+
padding: 1rem 2rem
|
|
4
4
|
line-height: 1.5
|
|
5
5
|
color: var(--text-p1)
|
|
6
6
|
font-weight: 500
|
|
7
7
|
text-align: center
|
|
8
|
-
border-radius:
|
|
8
|
+
border-radius: 8px
|
|
9
9
|
background: var(--card)
|
|
10
10
|
position: fixed
|
|
11
|
-
top: 50%
|
|
12
11
|
left: 50%
|
|
13
|
-
|
|
12
|
+
top: 32px
|
|
13
|
+
transform: translateX(-50%)
|
|
14
14
|
z-index: 9
|
|
15
15
|
disable-select()
|
|
16
|
-
box-shadow: $boxshadow-
|
|
16
|
+
box-shadow: $boxshadow-toast
|
|
17
|
+
visibility: hidden
|
|
18
|
+
|
|
19
|
+
&.show
|
|
20
|
+
visibility: visible
|
|
21
|
+
-webkit-animation: fadein 0.5s, fadeout 0.5s 2s
|
|
22
|
+
animation: fadein 0.5s, fadeout 0.5s 2s
|
|
23
|
+
|
|
24
|
+
@-webkit-keyframes fadein
|
|
25
|
+
from {top: -64px; opacity: 0;}
|
|
26
|
+
to {top: 32px; opacity: 1;}
|
|
27
|
+
@keyframes fadein
|
|
28
|
+
from {top: -64px; opacity: 0;}
|
|
29
|
+
to {top: 32px; opacity: 1;}
|
|
30
|
+
|
|
31
|
+
@-webkit-keyframes fadeout
|
|
32
|
+
from {top: 32px; opacity: 1;}
|
|
33
|
+
to {top: -64px; opacity: 0;}
|
|
34
|
+
@keyframes fadeout
|
|
35
|
+
from {top: 32px; opacity: 1;}
|
|
36
|
+
to {top: -64px; opacity: 0;}
|
package/source/css/_custom.styl
CHANGED
|
@@ -89,6 +89,7 @@ $border-button = 4px
|
|
|
89
89
|
// shadow
|
|
90
90
|
$boxshadow-card = 0 1px 2px 0px rgba(0, 0, 0, 0.1)
|
|
91
91
|
$boxshadow-float = 0 4px 8px 0px rgba(0, 0, 0, 0.1)
|
|
92
|
-
$boxshadow-card-float = 0
|
|
92
|
+
$boxshadow-card-float = 0 12px 16px -4px rgba(0, 0, 0, 0.2)
|
|
93
93
|
$boxshadow-button = 0 0 2px 0px rgba(0, 0, 0, 0.04), 0 0 8px 0px rgba(0, 0, 0, 0.04)
|
|
94
94
|
$boxshadow-block = 0 1px 4px 0px rgba(0, 0, 0, 0.02), 0 2px 8px 0px rgba(0, 0, 0, 0.02)
|
|
95
|
+
$boxshadow-toast = 0 4px 8px 0px rgba(0, 0, 0, 0.1), 0 12px 16px -4px rgba(0, 0, 0, 0.2)
|
|
@@ -97,3 +97,14 @@ hover-block($v, $h, $br = 4px)
|
|
|
97
97
|
trans2 color background
|
|
98
98
|
&:hover
|
|
99
99
|
background: var(--block-hover)
|
|
100
|
+
|
|
101
|
+
floatable-trans()
|
|
102
|
+
trans2 transform box-shadow
|
|
103
|
+
floatable-float()
|
|
104
|
+
box-shadow: 0 12px 20px -4px rgba(0, 0, 0, 0.15)
|
|
105
|
+
transform: translate3d(0, -2px, 0)
|
|
106
|
+
|
|
107
|
+
hover-float()
|
|
108
|
+
floatable-trans()
|
|
109
|
+
&:hover
|
|
110
|
+
floatable-float()
|
|
@@ -21,7 +21,7 @@ set_text_dark()
|
|
|
21
21
|
--text-p3: hsl($color-text-h, $color-text-s, $color-text-l / 0.5 * 1.25)
|
|
22
22
|
--text-p4: hsl($color-text-h, $color-text-s, $color-text-l / 0.5 * 1.5)
|
|
23
23
|
--text-meta: hsl($color-text-h, $color-text-s, $color-text-l / 0.5 * 2)
|
|
24
|
-
--text-code: hsl($color-code-h, $color-code-s, $color-code-l
|
|
24
|
+
--text-code: hsl($color-code-h, $color-code-s, $color-code-l)
|
|
25
25
|
|
|
26
26
|
set_text_light()
|
|
27
27
|
--text-p0: hsl($color-text-h, $color-text-s, 100)
|
|
@@ -30,7 +30,7 @@ set_text_light()
|
|
|
30
30
|
--text-p3: hsl($color-text-h, $color-text-s, 100 - $color-text-l / 0.5 * 1.2)
|
|
31
31
|
--text-p4: hsl($color-text-h, $color-text-s, 100 - $color-text-l / 0.5 * 1.4)
|
|
32
32
|
--text-meta: hsl($color-text-h, $color-text-s, 100 - $color-text-l / 0.5 * 1.75)
|
|
33
|
-
--text-code: hsl($color-code-h, $color-code-s, $color-code-l * 1.
|
|
33
|
+
--text-code: hsl($color-code-h, $color-code-s, (100 - $color-code-l) * 1.2)
|
|
34
34
|
|
|
35
35
|
:root
|
|
36
36
|
--site-bg: hsl($color-background-h, $color-background-s, $color-background-l)
|
|
@@ -54,7 +54,6 @@
|
|
|
54
54
|
height: 1.5em
|
|
55
55
|
|
|
56
56
|
.post-list .post-card:hover
|
|
57
|
-
box-shadow: 0 1px 4px 0px rgba(0, 0, 0, 0.1), 0 4px 16px 0px rgba(0, 0, 0, 0.1)
|
|
58
57
|
img
|
|
59
58
|
transform: scale(1.02)
|
|
60
59
|
filter: brightness(80%)
|
|
@@ -85,22 +84,16 @@
|
|
|
85
84
|
object-fit: cover
|
|
86
85
|
width: 100%
|
|
87
86
|
border-radius: 0
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
height: 240px
|
|
91
|
-
@media screen and (max-width: $device-tablet)
|
|
92
|
-
height: 220px
|
|
93
|
-
@media screen and (max-width: $device-mobile-425)
|
|
94
|
-
height: 200px
|
|
95
|
-
@media screen and (max-width: $device-mobile-375)
|
|
96
|
-
height: 180px
|
|
97
|
-
|
|
87
|
+
aspect-ratio: hexo-config('article.cover_ratio')
|
|
88
|
+
|
|
98
89
|
.post-list .post-card.post.photo
|
|
99
90
|
.cover
|
|
100
91
|
position: relative
|
|
101
92
|
line-height: 0
|
|
102
93
|
img
|
|
103
94
|
width: 100%
|
|
95
|
+
object-fit: cover
|
|
96
|
+
aspect-ratio: hexo-config('article.cover_ratio')
|
|
104
97
|
.cover-info
|
|
105
98
|
padding: 1.5rem 1rem
|
|
106
99
|
position: absolute
|
|
@@ -165,10 +158,15 @@
|
|
|
165
158
|
line-height: 1
|
|
166
159
|
margin-bottom: 0.75rem
|
|
167
160
|
.cap
|
|
161
|
+
--theme-block: var(--block)
|
|
168
162
|
background: var(--theme-block)
|
|
169
163
|
padding: 2px 4px
|
|
170
164
|
border-radius: 2px
|
|
171
165
|
p:last-child
|
|
172
166
|
margin-bottom: 0
|
|
173
167
|
.cap+.cap
|
|
174
|
-
margin-left: 4px
|
|
168
|
+
margin-left: 4px
|
|
169
|
+
|
|
170
|
+
.post-list.archives
|
|
171
|
+
@media screen and (max-width: $device-mobile)
|
|
172
|
+
margin: 1rem 0
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
margin-bottom: .5em
|
|
9
9
|
position: relative
|
|
10
10
|
padding: 4px 0
|
|
11
|
-
color: var(--text-
|
|
11
|
+
color: var(--text-p1)
|
|
12
12
|
&:after
|
|
13
13
|
content: ""
|
|
14
14
|
position: absolute
|
|
@@ -18,25 +18,25 @@
|
|
|
18
18
|
right: 0
|
|
19
19
|
z-index: -1
|
|
20
20
|
border-radius: 4px
|
|
21
|
-
background:
|
|
21
|
+
background: $color-theme
|
|
22
22
|
a.post
|
|
23
23
|
display: inline-flex
|
|
24
24
|
align-items: baseline
|
|
25
25
|
margin: 0.25rem 0
|
|
26
26
|
color: var(--text-p1)
|
|
27
|
-
|
|
28
|
-
|
|
27
|
+
trans2 color border
|
|
28
|
+
border-bottom: 1px dashed var(--text-meta)
|
|
29
29
|
time
|
|
30
30
|
font-family: $ff-code
|
|
31
31
|
margin-right: 1em
|
|
32
32
|
font-weight: 700
|
|
33
33
|
flex-shrink: 0
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
color: var(--text-
|
|
38
|
-
|
|
39
|
-
|
|
34
|
+
color: var(--text-p4)
|
|
35
|
+
&:hover
|
|
36
|
+
border-bottom: 1px solid $color-theme
|
|
37
|
+
color: var(--text-p0)
|
|
38
|
+
time
|
|
39
|
+
color: $color-theme
|
|
40
40
|
|
|
41
41
|
|
|
42
42
|
|
|
@@ -19,13 +19,11 @@
|
|
|
19
19
|
color: $color-hover
|
|
20
20
|
div#post-meta
|
|
21
21
|
margin-top: 2px
|
|
22
|
-
span
|
|
23
|
-
margin-left: 8px
|
|
22
|
+
span.updated
|
|
24
23
|
visibility: hidden
|
|
25
24
|
&:hover
|
|
26
|
-
div#post-meta
|
|
27
|
-
|
|
28
|
-
visibility: visible
|
|
25
|
+
div#post-meta span.updated
|
|
26
|
+
visibility: visible
|
|
29
27
|
|
|
30
28
|
.bread-nav .ghrepo
|
|
31
29
|
font-size: $fs-13
|
|
@@ -24,11 +24,11 @@ nav.cap
|
|
|
24
24
|
>p
|
|
25
25
|
margin: 0
|
|
26
26
|
a
|
|
27
|
-
padding: .25rem
|
|
28
|
-
margin: 10px 0 8px 0
|
|
27
|
+
padding: .25rem 0.75rem
|
|
28
|
+
margin: 10px 0.25rem 8px 0.25rem
|
|
29
29
|
line-height: 2
|
|
30
30
|
color: var(--text-p3)
|
|
31
|
-
border-radius:
|
|
31
|
+
border-radius: $border-button
|
|
32
32
|
font-weight: 500
|
|
33
33
|
white-space: nowrap
|
|
34
34
|
position: relative
|
|
@@ -37,8 +37,8 @@ nav.cap
|
|
|
37
37
|
height: 2px
|
|
38
38
|
position: absolute
|
|
39
39
|
bottom: -8px
|
|
40
|
-
left:
|
|
41
|
-
right:
|
|
40
|
+
left: 0.75rem
|
|
41
|
+
right: 0.75rem
|
|
42
42
|
background: $color-theme
|
|
43
43
|
border-radius: 2px
|
|
44
44
|
pointer-events: none
|
|
@@ -6,10 +6,9 @@
|
|
|
6
6
|
flex-direction: column
|
|
7
7
|
justify-content: flex-end
|
|
8
8
|
align-items: flex-start
|
|
9
|
-
|
|
10
|
-
height: 240px
|
|
9
|
+
height: 220px
|
|
11
10
|
@media screen and (max-width: $device-mobile-max)
|
|
12
|
-
height:
|
|
11
|
+
height: 180px
|
|
13
12
|
.bg
|
|
14
13
|
z-index: 0
|
|
15
14
|
.content
|
|
@@ -37,12 +36,12 @@
|
|
|
37
36
|
background: none
|
|
38
37
|
line-height: 1.5
|
|
39
38
|
font-size: $fs-15
|
|
40
|
-
&:hover
|
|
41
|
-
color: white
|
|
42
|
-
background: rgba(black, 0.5)
|
|
43
39
|
&.active
|
|
44
40
|
color: white
|
|
45
41
|
background: rgba(white, 0.25)
|
|
42
|
+
&:hover
|
|
43
|
+
color: white
|
|
44
|
+
background: rgba(black, 0.5) !important
|
|
46
45
|
.back
|
|
47
46
|
background: none
|
|
48
47
|
padding: 0
|
|
@@ -78,14 +77,11 @@
|
|
|
78
77
|
border-radius: 50%
|
|
79
78
|
width: 48px
|
|
80
79
|
height: 48px
|
|
81
|
-
border: 2px solid white
|
|
82
80
|
.bottom
|
|
83
81
|
display: flex
|
|
84
82
|
padding: 1rem
|
|
85
83
|
width: 100%
|
|
86
84
|
box-sizing: border-box
|
|
87
|
-
background-image: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.2))
|
|
88
|
-
text-shadow: 0 0 1px rgba(0,0,0,0.12)
|
|
89
85
|
.title
|
|
90
86
|
font-size: 1.5rem
|
|
91
87
|
font-weight: 600
|
|
@@ -99,9 +95,27 @@
|
|
|
99
95
|
font-size: 1.2rem
|
|
100
96
|
.subtitle
|
|
101
97
|
font-size: $fs-14
|
|
98
|
+
.content:only-child
|
|
99
|
+
color: var(--text-p1)
|
|
100
|
+
.bg+.content
|
|
101
|
+
color: white
|
|
102
|
+
.avatar
|
|
103
|
+
border: 2px solid white
|
|
104
|
+
.bottom
|
|
105
|
+
background-image: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.2))
|
|
106
|
+
text-shadow: 0 0 1px rgba(0,0,0,0.12)
|
|
102
107
|
|
|
103
108
|
.tag-plugin.banner
|
|
104
109
|
trans1(transform, 2s)
|
|
105
110
|
&:hover
|
|
106
111
|
img.bg
|
|
107
|
-
transform: scale(1.01)
|
|
112
|
+
transform: scale(1.01)
|
|
113
|
+
|
|
114
|
+
.l_main.list .tag-plugin.banner
|
|
115
|
+
background: var(--block-hover)
|
|
116
|
+
.content .top
|
|
117
|
+
margin-top: 1.5rem
|
|
118
|
+
margin: 0 1rem
|
|
119
|
+
@media screen and (max-width: $device-mobile)
|
|
120
|
+
margin: 0
|
|
121
|
+
border-radius: 0
|
|
@@ -2,17 +2,21 @@
|
|
|
2
2
|
display: flex
|
|
3
3
|
justify-content: space-between
|
|
4
4
|
box-sizing: border-box
|
|
5
|
-
background: var(--
|
|
5
|
+
background: var(--card)
|
|
6
6
|
border-radius: $border-bar
|
|
7
7
|
border: 1px solid var(--block-border)
|
|
8
8
|
overflow: hidden
|
|
9
|
-
width:
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
9
|
+
width: 100%
|
|
10
|
+
span
|
|
11
|
+
line-height: 3
|
|
12
|
+
padding: 0 1rem
|
|
13
|
+
background: var(--block)
|
|
14
|
+
border-right: 1px solid var(--block-border)
|
|
15
|
+
color: var(--text-p3)
|
|
16
|
+
font-family: $ff-code
|
|
17
|
+
font-size: $fs-12
|
|
18
|
+
font-weight: 700
|
|
19
|
+
flex-shrink: 0
|
|
16
20
|
input.copy-area
|
|
17
21
|
display: inline-block
|
|
18
22
|
padding: 0
|
|
@@ -21,14 +25,13 @@
|
|
|
21
25
|
line-height: 3
|
|
22
26
|
text-indent: 1rem
|
|
23
27
|
button.copy-btn
|
|
24
|
-
margin:
|
|
25
|
-
|
|
26
|
-
border-left: 1px solid var(--block-border)
|
|
28
|
+
margin: 2px
|
|
29
|
+
border-radius: 'calc(%s - 2px)' % $border-bar
|
|
27
30
|
display: inline-block
|
|
28
|
-
background:
|
|
31
|
+
background: none
|
|
29
32
|
line-height: 0
|
|
30
33
|
font-size: 1rem
|
|
31
34
|
padding: 0 .75rem
|
|
32
35
|
color: var(--text-p2)
|
|
33
36
|
&:hover
|
|
34
|
-
background: var(--
|
|
37
|
+
background: var(--block-hover)
|
|
@@ -60,8 +60,14 @@ details.folding[child=codeblock]>div.body
|
|
|
60
60
|
margin: 0
|
|
61
61
|
figcaption
|
|
62
62
|
display: none
|
|
63
|
+
span
|
|
64
|
+
background: var(--theme-block)
|
|
63
65
|
.code:before
|
|
64
66
|
content: none
|
|
67
|
+
.highlight+.highlight
|
|
68
|
+
border-top: 1px dashed var(--theme-border)
|
|
69
|
+
border-top-left-radius: 0
|
|
70
|
+
border-top-right-radius: 0
|
|
65
71
|
|
|
66
72
|
details.folding[child=iframe]
|
|
67
73
|
overflow: hidden
|
|
@@ -1,42 +1,9 @@
|
|
|
1
|
-
.users-wrap
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
margin: 0 0 1rem
|
|
5
|
-
p
|
|
6
|
-
margin: 0
|
|
7
|
-
font-size: $fs-14
|
|
8
|
-
&:first-child
|
|
9
|
-
font-size: 1.25rem
|
|
10
|
-
font-weight: 500
|
|
11
|
-
.group-body
|
|
12
|
-
width: 100%
|
|
13
|
-
display: flex
|
|
14
|
-
flex-wrap: wrap
|
|
15
|
-
align-items: stretch
|
|
16
|
-
&+.group-header
|
|
17
|
-
margin-top: 2rem
|
|
18
|
-
.stellar-friends-api
|
|
19
|
-
display: block
|
|
20
|
-
|
|
1
|
+
.users-wrap .grid-box
|
|
2
|
+
display: grid
|
|
3
|
+
grid-template-columns: repeat(auto-fill, minmax(80px, 1fr))
|
|
21
4
|
|
|
22
5
|
.users-wrap .user-card
|
|
23
|
-
flex-shrink: 1
|
|
24
|
-
display: flex
|
|
25
|
-
align-items: stretch
|
|
26
|
-
width: 12.5%
|
|
27
|
-
@media screen and (max-width: 980px)
|
|
28
|
-
width: 14.28%
|
|
29
|
-
@media screen and (max-width: 900px)
|
|
30
|
-
width: 16.66%
|
|
31
|
-
@media screen and (max-width: 820px)
|
|
32
|
-
width: 20%
|
|
33
|
-
@media screen and (max-width: $device-mobile-max)
|
|
34
|
-
width: 16.66%
|
|
35
|
-
@media screen and (max-width: $device-mobile)
|
|
36
|
-
width: 25%
|
|
37
6
|
.card-link
|
|
38
|
-
margin: 0
|
|
39
|
-
width: 100%
|
|
40
7
|
color: var(--text-p1)
|
|
41
8
|
font-size: 10px
|
|
42
9
|
font-weight: 500
|
|
@@ -50,6 +17,12 @@
|
|
|
50
17
|
overflow: hidden
|
|
51
18
|
position: relative
|
|
52
19
|
padding: 1rem 0.5rem
|
|
20
|
+
.name
|
|
21
|
+
max-width: 100%
|
|
22
|
+
display: -webkit-box
|
|
23
|
+
-webkit-box-orient: vertical
|
|
24
|
+
overflow: hidden
|
|
25
|
+
-webkit-line-clamp: 2
|
|
53
26
|
img
|
|
54
27
|
object-fit: cover
|
|
55
28
|
display: block
|
|
@@ -62,7 +35,7 @@
|
|
|
62
35
|
// transform
|
|
63
36
|
.users-wrap .user-card .card-link
|
|
64
37
|
>img
|
|
65
|
-
|
|
38
|
+
floatable-trans()
|
|
66
39
|
&:hover
|
|
67
40
|
background: var(--block-hover)
|
|
68
41
|
img
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
.tag-plugin.gallery
|
|
2
|
-
.cell
|
|
2
|
+
.grid-cell,.flow-cell
|
|
3
3
|
display: block
|
|
4
4
|
overflow hidden
|
|
5
5
|
z-index 0
|
|
@@ -30,66 +30,83 @@
|
|
|
30
30
|
display: block
|
|
31
31
|
font-size: $fs-13
|
|
32
32
|
color: transparent
|
|
33
|
+
pointer-events: none
|
|
33
34
|
line-height: 1.2
|
|
34
35
|
margin: 0.5rem
|
|
35
36
|
trans1(color)
|
|
37
|
+
text-align: left
|
|
36
38
|
&:empty
|
|
37
39
|
display: none
|
|
38
40
|
|
|
39
|
-
.tag-plugin.gallery
|
|
40
|
-
|
|
41
|
+
.tag-plugin.gallery .grid-cell
|
|
42
|
+
>img
|
|
43
|
+
trans1(transform, 0.5s)
|
|
41
44
|
&:hover
|
|
42
|
-
img
|
|
45
|
+
>img
|
|
43
46
|
transform: scale(1.1)
|
|
44
47
|
|
|
45
48
|
|
|
46
49
|
// 网格布局
|
|
47
|
-
.tag-plugin.gallery
|
|
50
|
+
.tag-plugin.gallery.grid-box
|
|
48
51
|
display: grid
|
|
52
|
+
&[size='xs']
|
|
53
|
+
grid-template-columns: repeat(auto-fill, minmax(80px, 1fr))
|
|
54
|
+
grid-gap: 2px
|
|
55
|
+
.grid-cell,img
|
|
56
|
+
border-radius: 2px
|
|
57
|
+
.image-caption
|
|
58
|
+
font-size: $fs-12
|
|
49
59
|
&[size='s']
|
|
50
60
|
grid-template-columns: repeat(auto-fill, minmax(100px, 1fr))
|
|
51
61
|
grid-gap: 2px
|
|
52
|
-
.cell,img
|
|
62
|
+
.grid-cell,img
|
|
53
63
|
border-radius: 2px
|
|
54
64
|
&[size='m']
|
|
55
65
|
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr))
|
|
56
66
|
grid-gap: 4px
|
|
57
|
-
.cell,img
|
|
67
|
+
.grid-cell,img
|
|
58
68
|
border-radius: 4px
|
|
59
69
|
&[size='l']
|
|
60
70
|
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr))
|
|
61
71
|
grid-gap: 8px
|
|
62
|
-
.cell,img
|
|
72
|
+
.grid-cell,img
|
|
63
73
|
border-radius: 8px
|
|
64
74
|
&[size='xl'] // 2列
|
|
65
75
|
grid-template-columns: repeat(2, 1fr)
|
|
66
76
|
grid-gap: 16px
|
|
67
|
-
.cell,img
|
|
77
|
+
.grid-cell,img
|
|
68
78
|
border-radius: 16px
|
|
69
79
|
&[size='mix'] // 1张大图+2张小图
|
|
70
80
|
grid-template-columns: repeat(auto-fill, minmax(150px, 1fr))
|
|
71
81
|
grid-gap: 4px
|
|
72
|
-
.cell,img
|
|
82
|
+
.grid-cell,img
|
|
73
83
|
border-radius: 4px
|
|
74
|
-
.cell
|
|
84
|
+
.grid-cell
|
|
75
85
|
&:nth-child(3n+1)
|
|
76
86
|
grid-column: auto / span 2
|
|
77
87
|
grid-row: auto / span 2
|
|
78
88
|
&[ratio='square']
|
|
79
|
-
.cell
|
|
89
|
+
.grid-cell
|
|
80
90
|
aspect-ratio: 1
|
|
81
|
-
|
|
91
|
+
&[ratio='portrait']
|
|
92
|
+
.grid-cell
|
|
93
|
+
aspect-ratio: 2 / 3
|
|
94
|
+
.grid-cell
|
|
82
95
|
background: var(--block)
|
|
83
96
|
img
|
|
84
97
|
width: 100%
|
|
85
98
|
height: 100%
|
|
99
|
+
|
|
86
100
|
// 瀑布流布局
|
|
87
|
-
.tag-plugin.gallery
|
|
101
|
+
.tag-plugin.gallery.flow-box
|
|
88
102
|
column-count: 3
|
|
89
103
|
column-gap: 8px
|
|
90
|
-
.cell
|
|
104
|
+
.flow-cell
|
|
91
105
|
border-radius: 8px
|
|
92
106
|
padding-bottom: 8px
|
|
107
|
+
img
|
|
108
|
+
width: 100%
|
|
109
|
+
height: 100%
|
|
93
110
|
.image-meta
|
|
94
111
|
border-radius: 8px
|
|
95
112
|
margin-bottom: 8px
|