Files
hextra_mirror/exampleSite/content/docs/guide/shortcodes/tabs.zh-cn.md

125 lines
3.1 KiB
Markdown
Raw Normal View History

2024-04-21 18:46:21 +08:00
---
2024-04-23 22:16:55 +02:00
title: 标签页
2024-04-21 18:46:21 +08:00
next: /docs/guide/deploy-site
---
## 示例
2025-08-14 19:07:25 +08:00
{{< tabs items="macOS,Linux,Windows" >}}
2024-04-21 18:46:21 +08:00
2025-08-14 19:07:25 +08:00
{{< tab >}}**macOS**: 苹果公司开发的桌面操作系统。{{< /tab >}}
{{< tab >}}**Linux**: 一款开源操作系统。{{< /tab >}}
{{< tab >}}**Windows**: 微软公司开发的桌面操作系统。{{< /tab >}}
2024-04-21 18:46:21 +08:00
{{< /tabs >}}
2025-08-14 19:07:25 +08:00
## 使用方法
2024-04-21 18:46:21 +08:00
2024-12-31 00:34:20 +00:00
### 默认
2024-04-21 18:46:21 +08:00
```
{{</* tabs items="JSON,YAML,TOML" */>}}
2025-08-14 19:07:25 +08:00
{{</* tab */>}}**JSON**: JavaScript对象表示法JSON是一种基于JavaScript对象语法的标准文本格式用于表示结构化数据。{{</* /tab */>}}
{{</* tab */>}}**YAML**: YAML是一种人类可读的数据序列化语言。{{</* /tab */>}}
{{</* tab */>}}**TOML**: TOML旨在成为一种易于阅读的最小化配置文件格式因其明显的语义而易于理解。{{</* /tab */>}}
2024-04-21 18:46:21 +08:00
{{</* /tabs */>}}
```
2025-08-14 19:07:25 +08:00
### 指定默认选中项
2024-04-21 18:46:21 +08:00
2025-08-14 19:07:25 +08:00
使用 `defaultIndex` 属性指定默认选中的标签页索引从0开始。
2024-04-21 18:46:21 +08:00
```
{{</* tabs items="JSON,YAML,TOML" defaultIndex="1" */>}}
2025-08-14 19:07:25 +08:00
{{</* tab */>}}**JSON**: JavaScript对象表示法JSON是一种基于JavaScript对象语法的标准文本格式用于表示结构化数据。{{</* /tab */>}}
{{</* tab */>}}**YAML**: YAML是一种人类可读的数据序列化语言。{{</* /tab */>}}
{{</* tab */>}}**TOML**: TOML旨在成为一种易于阅读的最小化配置文件格式因其明显的语义而易于理解。{{</* /tab */>}}
2024-04-21 18:46:21 +08:00
{{</* /tabs */>}}
```
2025-08-14 19:07:25 +08:00
默认会选中 `YAML` 标签页。
2024-04-21 18:46:21 +08:00
{{< tabs items="JSON,YAML,TOML" defaultIndex="1" >}}
2025-08-14 19:07:25 +08:00
{{< tab >}}**JSON**: JavaScript对象表示法JSON是一种基于JavaScript对象语法的标准文本格式用于表示结构化数据。{{< /tab >}}
{{< tab >}}**YAML**: YAML是一种人类可读的数据序列化语言。{{< /tab >}}
{{< tab >}}**TOML**: TOML旨在成为一种易于阅读的最小化配置文件格式因其明显的语义而易于理解。{{< /tab >}}
2024-04-21 18:46:21 +08:00
{{< /tabs >}}
2025-08-14 19:07:25 +08:00
### 使用Markdown
2024-04-21 18:46:21 +08:00
2025-08-14 19:07:25 +08:00
支持包括代码块在内的Markdown语法
2024-04-21 18:46:21 +08:00
````
{{</* tabs items="JSON,YAML,TOML" */>}}
{{</* tab */>}}
```json
{ "hello": "world" }
```
{{</* /tab */>}}
2025-08-14 19:07:25 +08:00
... 其他标签页类似添加
2024-04-21 18:46:21 +08:00
{{</* /tabs */>}}
````
{{< tabs items="JSON,YAML,TOML" >}}
{{< tab >}}
```json
{ "hello": "world" }
```
{{< /tab >}}
{{< tab >}}
```yaml
hello: world
```
{{< /tab >}}
{{< tab >}}
```toml
hello = "world"
```
{{< /tab >}}
2025-08-14 19:07:25 +08:00
{{< /tabs >}}
### 同步标签页
具有相同 `items` 列表的标签页可以同步。启用后,选择一个标签页会更新所有具有相同 `items` 的其他标签页,并在页面间记住选择。
`hugo.yaml``page` 部分全局启用:
```yaml {filename="hugo.yaml"}
params:
page:
tabs:
sync: true
```
启用后,以下两个标签页块将始终显示相同的选中项:
```markdown
{{</* tabs items="A,B" */>}}
{{</* tab */>}}A内容{{</* /tab */>}}
{{</* tab */>}}B内容{{</* /tab */>}}
{{</* /tabs */>}}
{{</* tabs items="A,B" */>}}
{{</* tab */>}}第二个A内容{{</* /tab */>}}
{{</* tab */>}}第二个B内容{{</* /tab */>}}
{{</* /tabs */>}}
```