Stacked主题文档

目录

官方文档可以在这里找到

设置说明

Front-matter设置

见下例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
title = "<页面的标题>"
date = "2010-01-01" # 发布日期
lastmod = "2020-01-01" # 更新日期
description = "<页面副标题>" # 会显示在主页上
math = true # 在本页面开启支持Katex
tags = ["<页面的标签>"]
categories = ["<页面的分类>"]
aliases = ["some-page-link", "AnOtHER_LinK"] # 给当前页面添加别的路径
license = "CC BY-NC-ND" # 指定当前页面的分享协议

[menu.main] # 在左侧菜单添加当前页面的入口
weight = -90 # 用于排序
params = { icon = "<入口图标>"}

[[links]] # 在文章底部添加外链块
title = "<外链标题>"
description = "<外链副标题>"
website = "<外链地址>"
image = "<外链的方形图片,本地图片和网络图片都支持>"
TOML

渲染样例

基本元素

链接:这是一个链接
按键:Ctrl
注音:shì
脚注:这有一个脚注1
行内代码块:这是一串代码
多行代码块:

1
2
3
这是
多行
代码
199
200
201
202
203
这是有
特定行号、
高亮、
语法类型
的代码块
TEXT
代码块
MD
1
这是用 `highlight` 短码生成的代码块
static/doc/test_code.zh-cn.sh
SH
1
2
# 此文件仅被用作可视化的例子。
# 它应通过 `code` 短码来加载。

引用

这是一个引用块

这是一个引用块的第二段

1
这是一个引用内的代码块
这是一个引用内的表格标题
这是一个引用内的表格内容

这是一个带出处的引用块

Jacob, 主题文档

列表

无序列表:

  • 嵌套列表
    • 二级列表元素
      • 三级列表元素
        • 四级列表元素
  • 列表内代码块
    1
    
    这是一个代码块
  • 选择框
  • 选择框(勾选)
  • 列表内表格
    这是一个列表内的表格标题
    这是一个列表内的表格内容

有序列表:

  1. 嵌套列表
    1. 二级列表元素
      1. 三级列表元素
        1. 四级列表元素
        2. 四级列表元素
      2. 三级列表元素
    2. 二级列表元素
  2. 嵌套列表

表格

这是一个Markdown生成的表格标题
这是一个Markdown生成的表格内容
HTML Tag生成的表格

这是一段行内代码

这是一段表格内引用

1
这是一段多行代码

这是一个段带出处的表格内引用

Jacob, 主题文档

选项卡

注意:目前选项卡页面不支持嵌套。

  • 基本元素
  • 列表
  • 代码块
  • 表格
  • 引用

链接:这是一个链接
按键:Ctrl
注音:shì
脚注:这有一个脚注1
行内代码块:这是一串代码


  1. 选项卡中的脚注内容。由于Hugo的限制,目前选项卡中的脚注只能生成在选项卡内部 ↩︎

无序列表:

  • 嵌套列表
    • 二级列表元素
      • 三级列表元素
        • 四级列表元素

有序列表

  1. 嵌套列表
    1. 二级列表元素
      1. 三级列表元素
        1. 四级列表元素
        2. 四级列表元素
      2. 三级列表元素
    2. 二级列表元素
  2. 嵌套列表
1
2
3
这是
多行
代码
这是一个选项卡内的表格标题
这是一个选项卡内的表格内容

这是一个引用块

这是一个引用块的第二段

这是一个带出处的引用块

Jacob, 主题文档

提示框

默认风格
这是一个提示框
默认风格(折叠)
这是一个默认折叠提示框
默认风格(无内容)
例子
这是一个例子提示框
注意
这是一个注意提示框
摘要
这是一个摘要提示框
信息
这是一个信息提示框
技巧
这是一个技巧提示框
成功
这是一个成功提示框
问题
这是一个问题提示框
警告
这是一个警告提示框
失败
这是一个失败提示框
漏洞
这是一个漏洞提示框
自定义
这是一个自定义图标和颜色的提示框
自定义(无内容)——测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字

参考代码

如果想复现本网站的样式,可以参考以下CSS样式:

assets/scss/custom.scss
SCSS
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
// 使头像不是圆形而是圆角矩形
.sidebar header .site-avatar .site-logo {
    border-radius: 10%;
}

// 自定义字体
@import url("https://cdn.jsdelivr.net/npm/noto-serif-sc@22.0.0/all.css");
@import url("https://cdn.staticfile.org/lxgw-wenkai-screen-webfont/1.6.0/style.css"); /*
   参见https://github.com/lxgw/LxgwWenKai/issues/24 */
:root {
    --zh-font-family: "LXGW WenKai Screen", "Hiragino Sans GB", "Droid Sans Fallback", "Microsoft YaHei";
    --article-font-family: "Noto Serif SC", var(--base-font-family);
}

// 自定义配色
:root[data-scheme="light"] {
    --accent-color: #1a5086; // 主题色
    --accent-color-darker: #2c3e50; // 主题色2(深色)

    --body-text-color: #707070; // 页面字体颜色
    --card-text-color-main: #34495e; // 卡片字体颜色
    --card-text-color-tertiary: #767676; // 副卡片字体颜色
    --code-background-color: #f8f8f8; // 行内代码背景色
    --code-text-color: #e96900; // 行内代码前景色
    --blockquote-background-color: #b9ebea4d; // 引用块背景颜色
    --tr-even-background-color: #eff0fa54 !important; // 表格配色样式

    --selection-text-color: #333; // 选区前景色
    --selection-background-color: #b3b5b8; // 选区背景色
}
:root[data-scheme="dark"] { // 暗黑模式下的配色

    --accent-color: #73d3eb;
    --accent-color-darker: #539aac;

    --blockquote-background-color: #313f5645;
    --body-background: #111; // 整页背景配色
    --card-background: #191d24; // 卡片配色
    --tr-even-background-color: #1e242ecf !important;
    --code-background-color: #360d0d;
    --code-text-color: #e96900;

    --selection-text-color: #fff;
    --selection-background-color: #34495e;

    $panel-bg: #323a47;
    $panel-title: #555;
    --panel-background-color: #{$panel-bg};
    --panel-titlebar-color: #{$panel-title};
    --panel-hover-color: #{mix($panel-bg, $panel-title, 50%)};

}

// 调整列表缩进和编号
.article-content {
    // 中文编号
    ol:lang(zh-cn) {
        // 一级序号
        list-style: simp-chinese-informal;

        // 二级序号
        ol {
            list-style-type: none;
            counter-reset: sectioncounter;
    
            li:before {
                content: "(" counter(sectioncounter, simp-chinese-informal) ") ";
                counter-increment: sectioncounter;
                color: var(--accent-color);
                margin-left: -32px;
            }
        }

        // 三级序号
        ol ol {
            list-style: decimal;

            li:before {
                content: "";
                margin-left: 0px;
            }
        }
    }

    // 英文编号
    ol:lang(en), ul:lang(en) {
        padding-inline-start: 32px;
    }

    li::marker {
        color: var(--accent-color);
        font-weight: bold;
    }

    // 脚注编号
    .footnotes ol {
        list-style: decimal;
    }

    // 清除目录内的编号
    #TableOfContents-inline {
        ol:lang(zh-cn) ol li:before {
            content: "";
            margin-left: 0;
        }
    }
}

// 调整引用间距
.article-content blockquote {
    :first-child {
        margin-top: 0px;
    }
    :last-child {
        margin-bottom: 0px;
    }
}

// 右侧归档数字斜体
.widget.archives .archives-year a span.count {
    font-style: italic;
}

// 双栏样式
// @media (min-width: 1024px) {
//     .article-list--compact.links {
//         display: grid;
//         grid-template-columns: 1fr 1fr ;
//         background: none;
//         box-shadow: none;
        
//         article {
//             background: var(--card-background);
//             border: none;
//             box-shadow: var(--shadow-l2);
//             // margin-right: 8px;
//             margin-bottom: 8px;
//             border-radius: var(--card-border-radius);
//             &:nth-child(odd) {
//                 margin-right: 8px;
//             }
//         }
//     }
// }

如果想使用本页面的元素,可以参考以下文档:

content/page/tutorial/index.zh-cn.md
MD
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
+++
title = "Stacked主题文档"
date = "2023-01-12"
hidden = true
+++

> 官方文档可以[在这里找到](https://stack.jimmycai.com/guide/)

## 设置说明

### Front-matter设置

见下例

```toml
title = "<页面的标题>"
date = "2010-01-01" # 发布日期
lastmod = "2020-01-01" # 更新日期
description = "<页面副标题>" # 会显示在主页上
math = true # 在本页面开启支持Katex
tags = ["<页面的标签>"]
categories = ["<页面的分类>"]
aliases = ["some-page-link", "AnOtHER_LinK"] # 给当前页面添加别的路径
license = "CC BY-NC-ND" # 指定当前页面的分享协议

[menu.main] # 在左侧菜单添加当前页面的入口
weight = -90 # 用于排序
params = { icon = "<入口图标>"}

[[links]] # 在文章底部添加外链块
title = "<外链标题>"
description = "<外链副标题>"
website = "<外链地址>"
image = "<外链的方形图片,本地图片和网络图片都支持>"
```

## 渲染样例

### 基本元素

链接:[这是一个链接](#)  
按键:<kbd>Ctrl</kbd>  
注音:{{< ruby "测(cè)试(shì)" >}}  
脚注:这有一个脚注[^basic]  
行内代码块:`这是一串代码`  
多行代码块:
```
这是
多行
代码
```

```text {linenostart=199,hl_lines="2-4"}
这是有
特定行号、
高亮、
语法类型
的代码块
```

{{< highlight title="代码块" type="md" >}}
这是用 `highlight` 短码生成的代码块
{{< /highlight >}}

{{< code "static/doc/test_code.zh-cn.sh" >}}

[^basic]: 基本元素中的脚注内容

### 引用

> 这是一个引用块
> 
> 这是一个引用块的第二段
>
> ```
> 这是一个引用内的代码块
> ```
>
> |这是一个引用内|的表格标题|
> |-------------:|:-------|
> |这是一个引用内|的表格内容|

{{< quote author="Jacob" source="主题文档" url="#">}}
这是一个带出处的引用块<br/>
{{< /quote >}}


### 列表

无序列表:
- 嵌套列表
  - 二级列表元素
    - 三级列表元素
      - 四级列表元素
- 列表内代码块
  ```
  这是一个代码块
  ```
- [ ] 选择框
- [x] 选择框(勾选)
- 列表内表格
  |这是一个列表内的|表格标题|
  |-------------:|:-------|
  |这是一个列表内的|表格内容|

有序列表:
1. 嵌套列表
    1. 二级列表元素
        1. 三级列表元素
            1. 四级列表元素
            1. 四级列表元素
        1. 三级列表元素
    1. 二级列表元素
1. 嵌套列表

### 表格

|这是一个Markdown生成的|表格标题|
|--------------------:|:------|
|这是一个Markdown生成的|表格内容|

<table>
<tr><th colspan="2">HTML Tag生成的表格</th>
</tr><tr><td>

`这是一段行内代码`

</td><td>

> 这是一段表格内引用

</td></tr><tr><td>

```
这是一段多行代码
```

</td><td>

{{< quote author="Jacob" source="主题文档" url="#">}}
这是一个段带出处的表格内引用<br/>
{{< /quote >}}

</td></tr>
</table>

### 选项卡

> 注意:目前选项卡页面不支持嵌套。

{{< tabs >}}
{{% tab 基本元素 %}}

链接:[这是一个链接](#)  
按键:<kbd>Ctrl</kbd>  
注音:{{< ruby "测(cè)试(shì)" >}}  
脚注:这有一个脚注[^tab]  
行内代码块:`这是一串代码`  

[^tab]: 选项卡中的脚注内容。由于Hugo的限制,目前选项卡中的脚注只能生成在选项卡内部

{{% /tab %}}

{{% tab 列表 %}}

无序列表:
- 嵌套列表
  - 二级列表元素
    - 三级列表元素
      - 四级列表元素

有序列表
1. 嵌套列表
    1. 二级列表元素
        1. 三级列表元素
            1. 四级列表元素
            1. 四级列表元素
        1. 三级列表元素
    1. 二级列表元素
1. 嵌套列表

{{% /tab %}}
{{< tab-code 代码块 text >}}
这是
多行
代码
{{< /tab-code >}}

{{% tab 表格 %}}
|这是一个选项卡内的|表格标题|
|---------------:|:-------|
|这是一个选项卡内的|表格内容|
{{% /tab %}}

{{% tab 引用 %}}
> 这是一个引用块
> 
> 这是一个引用块的第二段

{{< quote author="Jacob" source="主题文档" url="#">}}
这是一个带出处的引用块<br/>
{{< /quote >}}

{{% /tab %}}
{{< /tabs >}}

### 提示框

{{< notice "默认风格" >}}
这是一个**提示框**
{{< /notice >}}

{{< notice title="默认风格(折叠)" fold=true >}}
这是一个默认折叠**提示框**
{{< /notice >}}

{{< notice "默认风格(无内容)" />}}

{{< notice "例子" example >}}
这是一个**例子**提示框
{{< /notice >}}

{{< notice title="注意" style="note" fold=true >}}
这是一个**注意**提示框
{{< /notice >}}

{{< notice title="摘要" style="abstract" fold=true >}}
这是一个**摘要**提示框
{{< /notice >}}

{{< notice title="信息" style="info" fold=true >}}
这是一个**信息**提示框
{{< /notice >}}

{{< notice title="技巧" style="tip" fold=true >}}
这是一个**技巧**提示框
{{< /notice >}}

{{< notice title="成功" style="success" fold=true >}}
这是一个**成功**提示框
{{< /notice >}}

{{< notice title="问题" style="question" fold=true >}}
这是一个**问题**提示框
{{< /notice >}}

{{< notice title="警告" style="warning" fold=true >}}
这是一个**警告**提示框
{{< /notice >}}

{{< notice title="失败" style="failure" fold=true >}}
这是一个**失败**提示框
{{< /notice >}}

{{< notice title="漏洞" style="bug" fold=true >}}
这是一个**漏洞**提示框
{{< /notice >}}

{{< notice title="自定义" icon="brand-github" style="github" >}}
这是一个自定义图标和颜色的提示框
{{< /notice >}}

{{< notice title="自定义(无内容)——测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字测试文字" icon="brand-github" style="github" />}}

## 参考代码

如果想复现本网站的样式,可以参考以下CSS样式:

{{< code path="assets/scss/custom.scss" fold="true">}}

如果想使用本页面的元素,可以参考以下文档:

{{< code path="content/page/tutorial/index.zh-cn.md" fold="true">}}

  1. 基本元素中的脚注内容 ↩︎

Licensed under CC BY-NC-SA 4.0
使用 Hugo 构建
主题 StackedJimmy 设计,Jacob 修改