hexo-theme-fluid 1.8.13 → 1.8.14

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 CHANGED
@@ -183,6 +183,13 @@ color:
183
183
  board_color: "#fff"
184
184
  board_color_dark: "#252d38"
185
185
 
186
+ # 滚动条颜色
187
+ # Color of scrollbar
188
+ scrollbar_color: "#c4c6c9"
189
+ scrollbar_color_dark: "#687582"
190
+ scrollbar_hover_color: "#a6a6a6"
191
+ scrollbar_hover_color_dark: "#9da8b3"
192
+
186
193
  # 主题字体配置
187
194
  # Font
188
195
  font:
@@ -14,7 +14,7 @@ if (enable) {
14
14
  var lazy = false;
15
15
  if (theme.lazyload.enable) {
16
16
  var verRe = theme.static_prefix.mathjax.match(/@(\d{1,2})\.?(\d{0,2})\.?(\d{0,2})/);
17
- if (verRe.length >= 4) {
17
+ if (verRe && verRe.length >= 4) {
18
18
  ver = `${verRe[1]}.${verRe[2] || 'x'}.${verRe[3] || 'x'}`;
19
19
  lazy = compareVersions(ver, '3.2.0') >= 0;
20
20
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hexo-theme-fluid",
3
- "version": "1.8.13",
3
+ "version": "1.8.14",
4
4
  "description": "An elegant Material-Design theme for Hexo.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -30,8 +30,8 @@ module.exports = (hexo) => {
30
30
  return `<div class="hljs code-wrapper">${p1}</div>`;
31
31
  });
32
32
  page.content = page.content.replace(/<td class="gutter/gims, '<td class="gutter hljs');
33
- } else if (!hexo.config.highlight.line_number) {
34
- page.content = page.content.replace(/(?<!<div class="code-wrapper">)(<pre.+?<\/pre>)/gims, (str, p1) => {
33
+ } else {
34
+ page.content = page.content.replace(/(?<!<td class="code.*?">|<div class="code-wrapper">)(<pre.+?<\/pre>)/gims, (str, p1) => {
35
35
  if (/<code[^>]+?mermaid[^>]+?>/ims.test(p1)) {
36
36
  return str.replace(/(class=".*?)hljs(.*?")/gims, '$1$2');
37
37
  }
@@ -39,6 +39,10 @@ module.exports = (hexo) => {
39
39
  });
40
40
  }
41
41
 
42
+ page.content = page.content.replace(/<pre><code>/gims, (str) => {
43
+ return '<pre><code class="hljs">';
44
+ });
45
+
42
46
  if (hexo.config.highlight.line_number) {
43
47
  // Mermaid block adaptation
44
48
  page.content = page.content.replace(/<figure.+?<td class="code">.*?(<pre.+?<\/pre>).+?<\/figure>/gims, (str, p1) => {
@@ -48,6 +52,7 @@ module.exports = (hexo) => {
48
52
  return str;
49
53
  });
50
54
  }
55
+
51
56
  return page;
52
57
  });
53
58
  } else if (config.code.highlight.lib === 'prismjs') {
@@ -73,6 +78,11 @@ module.exports = (hexo) => {
73
78
  }
74
79
  return `<div class="code-wrapper">${p1}</div>`;
75
80
  });
81
+
82
+ page.content = page.content.replace(/<pre><code>/gims, (str) => {
83
+ return '<pre class="language-none"><code class="language-none">';
84
+ });
85
+
76
86
  return page;
77
87
  });
78
88
  }
@@ -7,7 +7,3 @@
7
7
  z-index 3
8
8
  -webkit-box-shadow 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19)
9
9
  box-shadow 0 12px 15px 0 rgba(0, 0, 0, 0.24), 0 17px 50px 0 rgba(0, 0, 0, 0.19)
10
-
11
- @media (max-width: 767px)
12
- #board
13
- overflow-x hidden
@@ -34,6 +34,7 @@ code
34
34
 
35
35
  table
36
36
  font-size inherit
37
+ color var(--post-text-color)
37
38
 
38
39
  img[lazyload]
39
40
  object-fit cover
@@ -46,3 +47,17 @@ img[lazyload]
46
47
 
47
48
  *[align="right"]
48
49
  text-align right
50
+
51
+ ::-webkit-scrollbar
52
+ width 6px
53
+ height 4px
54
+
55
+ ::-webkit-scrollbar-thumb
56
+ background-color var(--scrollbar-color)
57
+ border-radius 6px
58
+
59
+ &:hover
60
+ background-color var(--scrollbar-hover-color)
61
+
62
+ ::-webkit-scrollbar-corner
63
+ background-color transparent
@@ -11,6 +11,8 @@
11
11
  --link-hover-bg-color $link-hover-bg-color
12
12
  --navbar-bg-color $navbar-bg-color
13
13
  --navbar-text-color $navbar-text-color
14
+ --scrollbar-color $scrollbar-color
15
+ --scrollbar-hover-color $scrollbar-hover-color
14
16
 
15
17
  dark-colors()
16
18
  --body-bg-color $body-bg-color-dark
@@ -24,6 +26,8 @@ dark-colors()
24
26
  --link-hover-bg-color $link-hover-bg-color-dark
25
27
  --navbar-bg-color $navbar-bg-color-dark
26
28
  --navbar-text-color $navbar-text-color-dark
29
+ --scrollbar-color $scrollbar-color-dark
30
+ --scrollbar-hover-color $scrollbar-hover-color-dark
27
31
 
28
32
  img, .note, .label
29
33
  -webkit-filter brightness(.9)
@@ -40,15 +44,6 @@ dark-colors()
40
44
  background-color rgba(#3e4b5e, .35)
41
45
  transition background-color .2s ease-in-out
42
46
 
43
- pre, td.gutter, td.code > .code-wrapper
44
- -webkit-filter brightness(.9)
45
- filter brightness(.9)
46
- transition filter .2s ease-in-out
47
-
48
- td.gutter pre
49
- -webkit-filter initial
50
- filter initial
51
-
52
47
  h1, h2
53
48
  border-bottom-color $line-color-dark
54
49
  transition border-bottom-color .2s ease-in-out
@@ -222,18 +222,6 @@ label
222
222
  pre
223
223
  background-color initial !important
224
224
 
225
- & > .code-wrapper
226
- position relative
227
- border-radius 3px
228
-
229
- pre[class*=language-].line-numbers
230
- position initial
231
-
232
- figure.highlight
233
- td.code > pre
234
- border-top-left-radius 0
235
- border-bottom-left-radius 0
236
-
237
225
  hr
238
226
  height 0
239
227
  margin 2rem 0
@@ -242,6 +230,13 @@ label
242
230
  border-top-style solid
243
231
  border-top-color rgba(0, 0, 0, .1)
244
232
 
233
+ *:not(td) > .code-wrapper
234
+ position relative
235
+ border-radius 3px
236
+
237
+ pre[class*=language-].line-numbers
238
+ position initial
239
+
245
240
  figure
246
241
  margin 1rem 0
247
242
 
@@ -266,6 +261,9 @@ figure.highlight
266
261
 
267
262
  td.gutter
268
263
  display table-cell
264
+ position sticky
265
+ left 0
266
+ z-index 1
269
267
 
270
268
  &:not(.hljs)
271
269
  background-color #f6f8fa
@@ -284,6 +282,10 @@ figure.highlight
284
282
  span.line
285
283
  color #999
286
284
 
285
+ td.code > pre
286
+ border-top-left-radius 0
287
+ border-bottom-left-radius 0
288
+
287
289
  // Rewrite mdb.css
288
290
  .list-group-item
289
291
  background-color transparent
@@ -28,6 +28,10 @@
28
28
  object-fit cover
29
29
  max-width 100%
30
30
 
31
+ @media (max-width: 767px)
32
+ .page-content, .post-content
33
+ overflow-x hidden
34
+
31
35
  .post-metas
32
36
  display flex
33
37
  flex-direction row
@@ -176,6 +180,24 @@
176
180
  overflow hidden
177
181
  transition all .3s ease-in-out
178
182
 
183
+ .toc-list-item
184
+ &.is-active-li::before
185
+ height 1rem
186
+ margin 0.25rem 0
187
+ visibility visible
188
+
189
+ &::before
190
+ width 0.15rem
191
+ height 0.2rem
192
+ position absolute
193
+ left 0.25rem
194
+ content ''
195
+ border-radius 2px
196
+ margin 0.65rem 0
197
+ background var(--link-hover-color)
198
+ visibility hidden
199
+ transition height .1s ease-in-out, margin .1s ease-in-out, visibility .1s ease-in-out
200
+
179
201
  @media (max-width: 1024px)
180
202
  .toc-container
181
203
  padding-left 0
@@ -46,5 +46,11 @@ $scroll-arrow-height-limit = theme-config-origin("scroll_down_arrow.banner_heigh
46
46
  $board-bg-color = theme-config("color.board_color", "#fff")
47
47
  $board-bg-color-dark = theme-config("color.board_color_dark", "#252d38")
48
48
 
49
+ // scrollbar
50
+ $scrollbar-color = theme-config("color.scrollbar_color", "#c4c6c9")
51
+ $scrollbar-color-dark = theme-config("color.scrollbar_color_dark", "#687582")
52
+ $scrollbar-hover-color = theme-config("color.scrollbar_hover_color", "#a6a6a6")
53
+ $scrollbar-hover-color-dark = theme-config("color.scrollbar_hover_color_dark", "#9da8b3")
54
+
49
55
  // Shadow
50
56
  $img-shadow = 0 5px 11px 0 rgba(0, 0, 0, .18), 0 4px 15px 0 rgba(0, 0, 0, .15)
@@ -188,7 +188,7 @@
188
188
  }
189
189
 
190
190
  // 设置 utterances 评论主题
191
- var utterances = document.querySelector('iframe');
191
+ var utterances = document.querySelector('.utterances-frame');
192
192
  if (utterances) {
193
193
  var theme = window.UtterancesThemeLight;
194
194
  if (schema === 'dark') {