Markdown / MDX 全元素测试页
用于检查 Markdown、MDX、KaTeX、代码高亮和 C++ playground 的渲染效果。
Markdown / MDX 全元素测试页
这是一篇用于检查显示效果的测试文档。它同时覆盖普通 Markdown、GitHub Flavored Markdown(GFM)、MDX 组件、C++ 代码高亮和数学公式。
1. 标题、段落和行内格式
这是普通段落。可以使用 粗体、斜体、粗斜体、删除线、行内代码 和 高亮文本。
也可以使用下标 H2O、上标 x2、键盘按键 Ctrl + C,以及缩写 HTML。
换行测试:第一行末尾有两个空格。
这是同一段中的第二行。
2. 链接、图片和自动链接
MDX 将尖括号解释为 JSX,因此自动链接写成普通链接;字面量可以写作 <https://example.com>。
下面是一张本地 SVG 图片:
3. 列表
无序列表:
- 第一项
- 第二项
- 嵌套项目 A
- 嵌套项目 B
- 第三项
有序列表:
- 写源代码
- 编译程序
- 阅读诊断信息
- 运行并测试
任务列表:
- 检查 Markdown
- 检查数学公式
- 接入浏览器 C++ 编译器
4. 引用、分隔线和定义
学习编程不仅是记住语法,还要学会观察输入、输出和错误信息。
—— 测试引用
术语 : 这是一个定义列表风格的测试。标准 Markdown 渲染器可能会把它显示为普通段落。
5. 表格
| 元素 | 语法 | 用途 |
|---|---|---|
| 粗体 | **text** | 强调关键词 |
| 行内代码 | `code` | 表示变量或命令 |
| 数学公式 | $a+b$ | 表示数学表达式 |
| 代码块 | `````cpp | 展示完整程序 |
6. 代码
行内命令:运行 g++ main.cpp -std=c++20 -o main,然后执行 ./main。
#include <iostream>
int main() {
int n;
std::cin >> n;
std::cout << n * (n + 1) / 2 << '\\n';
}
输入:5
输出:15
g++ main.cpp -std=c++20 -Wall -Wextra -o main
./main
const answer = numbers.reduce((sum, value) => sum + value, 0);
console.log(answer);
- std::cout << n << '\\n';
+ std::cout << n * (n + 1) / 2 << '\\n';
代码中的 HTML 特殊字符也应保持可见:<vector>, &&, a < b。
7. C++ playground 元素
下面测试 MDX 组件是否可以和普通 Markdown 正文、代码块以及公式一起使用。点击“编辑示例”后可以修改代码;点击“运行”会在浏览器的 Web Worker 中编译执行。
#include <iostream>
int main() {
int n;
std::cin >> n;
std::cout << n * (n + 1) / 2 << '\n';
} Tab 缩进 · Shift+Tab 取消缩进 · Esc 后按 Tab 离开编辑器 · Ctrl/Cmd+F 查找
输入一次性提供,读完后为 EOF。
运行结果
输出 stdout
运行后,结果显示在这里。
编译诊断
标准错误 stderr
运行环境错误
8. 行内数学公式
这是行内公式:。变量可以写成 ,极限可以写成 ,集合可以写成 。
更多行内例子:、、、、。
9. 块级数学公式
9.1 基本运算和对齐
9.2 矩阵、向量和行列式
9.3 分段函数、集合和逻辑
9.4 算法复杂度
10. HTML 和 MDX 内联元素
点击展开 HTML details
这是一个原生 HTML <details> 元素。它适合放置提示、答案或补充说明。
自定义提示框: 这是用 HTML class 测试自定义样式的区域。
MDX 表达式测试:当前年份是 2026。
11. 脚注和转义
Markdown 使用简单、可读的纯文本格式。1
需要显示字面量时可以转义:\不是斜体\,\# 不是标题,\[不是链接\]。
12. 小结
如果本页所有元素都显示正常,就说明当前站点已经覆盖了常用的 Markdown、MDX、GFM、KaTeX、Shiki 和 C++ playground 接口。
Footnotes
-
这是一个脚注。构建后应当可以点击脚注编号跳转,并能返回正文。 ↩