脚注
脚注是 Markdown 的一种扩展功能,可以为文档添加引用说明或补充信息,让读者在不打断阅读流程的情况下查看额外的解释。
基本语法
添加脚注
在 Markdown 中创建脚注包含两个部分:脚注标记和脚注内容。
markdown
这是一段包含脚注的文本[^1]。
[^1]: 这是脚注的内容。
渲染效果:
这是一段包含脚注的文本^1。
多个脚注
markdown
Markdown 是一种轻量级标记语言[^1],由 John Gruber 创建[^2],现在被广泛应用于写作领域[^3]。
[^1]: Markdown 使用简单的语法来实现文本格式化。
[^2]: John Gruber 于 2004 年创建了 Markdown。
[^3]: 许多平台如 GitHub、Stack Overflow 和博客平台都支持 Markdown。
渲染效果:
Markdown 是一种轻量级标记语言[^2],由 John Gruber 创建[^3],现在被广泛应用于写作领域[^4]。
[^2]: Markdown 使用简单的语法来实现文本格式化。 [^3]: John Gruber 于 2004 年创建了 Markdown。 [^4]: 许多平台如 GitHub、Stack Overflow 和博客平台都支持 Markdown。
高级用法
脚注标识符
脚注标识符可以是数字或单词,但不能包含空格或制表符。
markdown
这里有一个普通脚注[^1]和一个带标识符的脚注[^note]。
[^1]: 这是普通脚注。
[^note]: 这是一个带标识符的脚注。
渲染效果:
多段落脚注
脚注内容可以包含多个段落或其他元素,需要保持缩进。
markdown
这是一个包含多段落的脚注[^multipara]。
[^multipara]: 这是脚注的第一段。
这是脚注的第二段。缩进至少四个空格或一个制表符。
> 脚注中还可以包含引用块。
- 也可以包含列表
- 有序或无序列表都可以
渲染效果:
这是一个包含多段落的脚注^multipara。
这是脚注的第二段。缩进至少四个空格或一个制表符。
> 脚注中还可以包含引用块。
- 也可以包含列表
- 有序或无序列表都可以
行内脚注
某些 Markdown 实现支持行内脚注语法,但这不是标准 Markdown 的一部分。
markdown
这是一个行内脚注^[直接在文本中添加脚注内容而非在文档末尾]。
渲染效果(在支持的平台上):
这是一个行内脚注^[直接在文本中添加脚注内容而非在文档末尾]。
兼容性和实现差异
不同平台支持情况
平台/工具 | 标准脚注 | 行内脚注 | 多段落脚注 |
---|---|---|---|
GitHub Markdown | ✅ | ❌ | ✅ |
GitLab Markdown | ✅ | ✅ | ✅ |
Jekyll(kramdown) | ✅ | ✅ | ✅ |
Hugo | ✅ | ✅ | ✅ |
CommonMark | ❌ | ❌ | ❌ |
VitePress | ✅ | ✅ | ✅ |
Pandoc | ✅ | ✅ | ✅ |
HTML 输出格式
大多数 Markdown 处理器会将脚注转换为具有链接和返回箭头的 HTML:
html
<!-- 脚注引用 -->
<p>这是一段包含脚注的文本<sup id="fnref:1"><a href="#fn:1" class="footnote-ref">1</a></sup>。</p>
<!-- 脚注内容(通常位于文档末尾) -->
<div class="footnotes">
<hr>
<ol>
<li id="fn:1">
<p>这是脚注的内容。<a href="#fnref:1" class="footnote-backref">↩</a></p>
</li>
</ol>
</div>
使用建议与最佳实践
何时使用脚注
脚注适用于以下情况:
- 引用来源:引用研究论文、书籍或其他参考资料
- 补充解释:提供额外信息而不打断主要内容
- 延伸阅读:为感兴趣的读者提供更多资源
- 术语解释:解释专业术语或缩写
脚注排版建议
markdown
✅ 推荐做法:
1. **脚注内容放在末尾**:将所有脚注定义放在文档末尾,便于维护
2. **保持一致性**:使用一致的脚注标记方式(数字或有意义的标识符)
3. **适度使用**:过多的脚注会分散读者注意力
4. **提供有意义的内容**:脚注应该增加实际价值,而不仅是重复正文
❌ 避免做法:
1. 在一个句子中使用多个脚注
2. 使用脚注来展示核心信息
3. 脚注中放置过长的内容
4. 脚注嵌套脚注
长文档中的脚注
对于很长的文档,可以将脚注按章节分组:
markdown
# 第一章
这是第一章的内容,包含一个脚注[^1-1]。
[^1-1]: 第一章的第一个脚注。
# 第二章
这是第二章的内容,包含另一个脚注[^2-1]。
[^2-1]: 第二章的第一个脚注。
常见问题解决
脚注不显示
如果您的脚注没有正确显示:
- 确保脚注标识符和脚注定义完全匹配(包括大小写)
- 验证脚注定义是否有正确的格式(冒号后需要空格)
- 检查您的 Markdown 处理器是否支持脚注语法
- 尝试在脚注定义前后留出空行
脚注编号混乱
一些处理器会自动重新编号脚注,即使您使用了自定义标识符。这是预期行为,最终显示通常是连续的数字。
移动设备上的可用性
在移动设备上,脚注链接可能较小,难以点击。使用支持悬浮预览脚注的阅读器可以改善这一问题。
相关语法
练习与应用
- 创建一个包含至少三个不同脚注的短文章
- 尝试创建一个包含多段落内容的脚注
- 在学术或技术文章中使用脚注引用参考资料
脚注是增强 Markdown 文档专业性和可信度的重要工具。它们让您可以在不打断主要内容流程的情况下提供额外信息,使文档更加完整和权威。