Everlasting Pages

返回

渲染功能测试

这是一个用于测试 Everlasting Pages 内容渲染能力的页面。

如果以后升级 Astro、Astro Pure、Shiki、KaTeX,或者修改全局 CSS,可以重新打开本页,快速检查有没有出现渲染回归。


1. 基础 Markdown#

1.1 文本样式#

普通文本。

粗体文本

斜体文本

粗斜体文本

删除线文本

这是 inline code 行内代码。

这是一个 内部链接

这是一个 外部链接


1.2 引用#

这是一段普通 Markdown 引用。

引用中可以包含 粗体代码 和其他 Markdown 内容。


1.3 无序列表#

  • Java
  • Python
  • C++
    • STL
    • Templates

1.4 有序列表#

  1. 创建项目
  2. 编写代码
  3. 编译项目
  4. 运行测试

1.5 嵌套列表#

  • CS61B
    • Chapters
      • Java
      • Lists
      • Trees
    • Labs
    • Projects

1.6 表格#

功能状态说明
Markdown基础内容
MDXAstro 组件
KaTeX数学公式
Shiki代码高亮
Waline评论系统

2. 标题、锚点与 TOC#

这一部分用于测试右侧文章目录、点击跳转、Heading ID、标题锚点以及滚动高亮。

二级测试标题 A#

这里是 A 的内容。

二级测试标题 B#

这里是 B 的内容。

四级测试标题#

这里是更深一级的标题。

中文标题测试#

中文标题也应该正确生成 slug,并支持 TOC 跳转。


3. 数学公式 KaTeX#

3.1 行内公式#

二分查找的时间复杂度为 O(logn)O(\log n)

归并排序的时间复杂度为 O(nlogn)O(n\log n)

欧拉公式:

eiπ+1=0e^{i\pi}+1=0

3.2 块级公式#

i=1ni=n(n+1)2\sum_{i=1}^{n} i = \frac{n(n+1)}{2} T(n)=2T(n2)+O(n)T(n)=2T\left(\frac{n}{2}\right)+O(n) f(x)=x2+2x+1=(x+1)2\begin{aligned} f(x) &= x^2 + 2x + 1 \\ &= (x+1)^2 \end{aligned}

4. Shiki 代码渲染#

4.1 基础代码块#

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
java

4.2 文件标题#

HelloWorld.java
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}
java

4.3 Diff#

User.java
public class User {
    private String username;
    private String password; 
    private String passwordHash; 
}
java

4.4 单行高亮#


4.5 多行高亮#

Example.java
public class Example {
    public static void main(String[] args) {
        int x = 10; 
        int y = 20;
        int sum = x + y;

        System.out.println(sum);
    }
}
java

4.6 长代码自动折叠#

下面故意超过 15 行。


5. Card#

Everlasting Pages

Card 组件测试

2026

这里可以放普通文字、列表或者其他内容。

  • Astro
  • Markdown
  • MDX

6. Collapse#

点击展开内容

这是隐藏内容。

可以在这里放:

  • 说明
  • 答案
  • 长代码
  • 补充资料
System.out.println("Collapse works!");
java

这段文字始终显示在折叠标题上方。

带 before slot 的 Collapse

真正可折叠的内容在这里。


7. Aside#

Note#

Tip#

Caution#

Danger#

Aside 中嵌套代码#


8. Tabs#

java --version
powershell

Windows 使用 PowerShell。


8.1 同步 Tabs#

下面两个 Tabs 使用相同的 syncKey

切换其中一个后,另一个应该同步。

Windows 第一组内容。

Windows 第二组内容。


9. MDX Repl#

<MdxRepl width='80%'>
  <Button
    href='/'
    title='这是 MdxRepl 中的 Button'
    variant='ahead'
  />
</MdxRepl>
jsx

10. CardList#

10.1 普通 CardList#

CS 学习路线


10.2 可折叠 CardList#

点击展开列表

  • 第一项

  • 第二项

  • 第三项


11. Timeline#

  • 2025
    开始学习计算机科学
  • 2026.01
    学习数据结构与算法
  • 2026.08
    整理技术文档与个人博客
  • Future
    Keep building.

12. Steps#

  1. 创建项目#

    创建 Astro 项目并安装依赖。

  2. 编写内容#

    使用 Markdown 或 MDX 编写文章。

  3. 本地测试#

    npm run dev
    powershell
  4. 构建项目#

    npm run build
    powershell
  5. 部署#

    Push 到 GitHub 后自动部署。


13. Button#

普通按钮

Ahead

Back

Pill

自定义内容

14. Spoiler#

鼠标移动到下面内容:

答案是:42。

也可以隐藏一句话:

这是一个 隐藏词语 测试。


15. Label#

普通 Label

RSS


16. SVG Loader#

下面直接加载:

src/assets/icons/key.svg


17. Icon#

单个图标测试:


17.1 Astro Pure 全部 Icon#

点击按钮应该复制对应 Icon 名称,并弹出 Toast。


18. Quote#

下面会调用 site.config.ts 中配置的一言 API。

Loading...

刷新页面后,理论上应该重新请求内容。


19. GitHub Card#

everlastingQAQ / blog

Waiting for api.github.com...

???
???
???
?????

正常情况下会自动获取:

  • GitHub 头像
  • Description
  • Stars
  • Forks
  • License
  • 主要语言

20.1 GitHub#

20.2 Astro#


21. QRCode#

下面二维码固定指向博客首页:


22. Toast#

点击下面按钮。

如果工作正常,页面上应该出现 Toast。


23. Medium Zoom#

点击下面图片测试图片放大。

Medium Zoom 测试图片

24. 普通图片#

同一张图片,不添加 zoomable

普通图片测试

25. 原生 Details#

点击展开原生 details

这里不依赖额外 JavaScript。

System.out.println("Native details");
java

26. 超长文本与 URL#

用于检查 overflow。

https://example.com/this/is/a/very/very/very/very/very/very/very/very/very/very/long/path/that/should/not/break/the/layout

行内代码:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa


27. HTML 元素#

Keyboard#

按下 Ctrl + C

Mark#

这是一个 高亮文本

Sub / Sup#

H2O

E = mc2

Abbreviation#

HTML

28. 分割线#

上面。


下面。


29. 综合嵌套渲染#


30. Collapse + 代码#

查看完整 Java 示例


31. Spoiler + Inline Code#

问题:

Java 程序的默认入口方法叫什么?

答案:

public static void main(String[] args)


32. Button + Icon#


33. 响应式布局测试#

Card A

第一张响应式卡片

Card B

第二张响应式卡片

Card C

第三张响应式卡片

缩放浏览器窗口,检查:

  • 手机
  • 平板
  • 桌面

三个尺寸下的布局。


34. 深色 / 浅色主题测试#

切换网站右上角主题按钮。

重点检查:

  • 正文
  • 链接
  • Inline Code
  • 代码块
  • Aside
  • Card
  • Collapse
  • Tabs
  • GitHubCard
  • LinkPreview
  • QRCode
  • 数学公式
  • 图片
  • 分割线

35. 渲染验收结论#

如果本页所有区域都工作正常,可以基本确认:

Markdown

MDX

Astro Content Collection

remark / rehype

KaTeX

Shiki

Astro Pure Components

UnoCSS / Typography

客户端交互

这一整条内容渲染链路工作正常。


36. 测试完成#

如果你能看到这一行,并且右侧 TOC 可以正常跳到这里:

Render Demo Passed.