本文档说明了如何在 reveal.js 演示文稿中使用 Markdown 格式。Reveal.js 包含一个强大的 Markdown 插件,允许您使用 Markdown 而不是 HTML 来编写幻灯片,从而提供更简单的创作体验,同时保持 reveal.js 的全部功能。有关创建自定义插件的信息,请参阅创建自定义插件。
reveal.js 中的 Markdown 插件支持两种主要工作流程:
该插件处理 Markdown 内容,将其转换为 HTML 幻灯片,并支持用于幻灯片分隔、垂直幻灯片、演讲者备注和元素属性的特殊语法。
来源: plugin/markdown/plugin.js29-489 plugin/markdown/markdown.js1-7
要在 HTML 文件中使用 Markdown,请创建一个带有 data-markdown 属性的 section 元素,并将您的 Markdown 放在一个 <script type="text/template"> 标签内
要从外部文件加载 Markdown,请在 data-markdown 属性中指定文件路径
来源: plugin/markdown/plugin.js208-258 test/test-markdown.html19-41
默认情况下,水平幻灯片通过三个换行符(\n\n\n)或模式 --- 进行分隔。垂直幻灯片通常用两个换行符(\n\n)分隔。您可以使用属性自定义这些分隔符
| 属性 | 目的 | 默认值 |
|---|---|---|
data-separator | 水平幻灯片分隔符 | ^\r?\n---\r?\n$ |
data-separator-vertical | 垂直幻灯片分隔符 | null |
data-separator-notes | 演讲者备注分隔符 | ^notes? |
使用这些分隔符的 Markdown 内容示例
来源: plugin/markdown/plugin.js97-108 plugin/markdown/plugin.js135-200 test/test-markdown.html21-33
您可以在 reveal.js 初始化中配置 Markdown 插件
fragment 类来源: plugin/markdown/plugin.js429-476 test/test-markdown.html393-407
Markdown 插件提供了增强的代码块功能
使用带有语言标识符的三重反引号来启用语法高亮
### Line Numbers and Highlighting
You can add line numbers and highlight specific lines using a special syntax in the code block declaration:
```markdown
```javascript [1,4-6]
// Line 1 is highlighted
function example() {
// Lines 4-6 are highlighted
let x = 10;
let y = 20;
return x + y;
}
### Line Numbering with Custom Offset
You can specify a starting line number:
```markdown
```javascript [15: 2,5-7]
// Line 2 is highlighted (but numbered as 16)
function example() {
// Lines 5-7 are highlighted (numbered as 19-21)
let x = 10;
let y = 20;
return x + y;
}
Sources: <FileRef file-url="https://github.com/hakimel/reveal.js/blob/dfc5690c/plugin/markdown/plugin.js#L434-L466" min=434 max=466 file-path="plugin/markdown/plugin.js">Hii</FileRef> <FileRef file-url="https://github.com/hakimel/reveal.js/blob/dfc5690c/test/test-markdown.html#L246-L304" min=246 max=304 file-path="test/test-markdown.html">Hii</FileRef>
## Element and Slide Attributes
You can add attributes to elements or entire slides using HTML comments:
### Element Attributes
To add attributes to the preceding element:
```markdown
## Slide Title
<!-- .element: class="fragment fade-in" data-fragment-index="1" -->
- Item 1 <!-- .element: class="fragment" -->
- Item 2 <!-- .element: class="fragment" -->
为整个幻灯片添加属性
来源: plugin/markdown/plugin.js314-336 plugin/markdown/plugin.js342-374 test/test-markdown.html151-198
Markdown 插件可与其他 reveal.js 插件无缝协作
Markdown 插件遵循 reveal.js 的插件架构,与核心框架集成
来源: plugin/markdown/plugin.js418-489
从外部文件加载时,该插件支持
data-charset 属性自定义字符集来源: plugin/markdown/plugin.js261-303
您可以在幻灯片中混合使用 HTML 和 Markdown。Markdown 解析器将忽略大多数 HTML 标签内的内容,允许您使用 HTML 进行更复杂的布局
以下是 Markdown 插件的一些常见用法模式
### Two-Column Layout
```markdown
<div class="columns">
<div class="column">
## Left Column
- Point one
- Point two
- Point three
</div>
<div class="column">
## Right Column
```js
// Code example
const x = 10;
const y = 20;
```
</div>
</div>
Markdown 插件提供了一种强大而简化的标记语言来创建 reveal.js 演示文稿。它支持 reveal.js 的所有核心功能,同时降低了幻灯片创建的复杂性。如需进一步自定义,您可以探索各种配置选项以及与其他插件的集成。
有关 reveal.js 中其他插件的信息,请参阅插件系统。
来源: plugin/markdown/plugin.js1-489 plugin/markdown/markdown.js1-7 plugin/markdown/markdown.esm.js1-2
刷新此 Wiki
最后索引时间2025 年 4 月 18 日(dfc569)