LogoLinlog

Markdown 渲染效果展示

这篇文章展示了本博客所有可用的 Markdown 语法和自定义指令的渲染效果,包括标题、文本样式、行内剧透、代码块、表格、数学公式、Mermaid 图表、Tabs、折叠面板、视频嵌入、链接卡片等。

#文本样式

这是一段普通文本,包含粗体文字斜体文字_粗斜体_以及 行内代码删除线文字高亮文字Ctrl + K 键盘快捷键。

下面是一个脚注示例 1

这是一段剧透/折叠文字,点击展开

使用 <details> + <summary> 元素实现点击展开/折叠效果。适合隐藏剧透内容或补充说明。

此外,还支持行内剧透文本,使用 :spoiler[隐藏文字] 语法。将鼠标悬停在这段文字上即可看到 被隐藏的内容。适合在句子中间隐藏关键信息。

#标题层级

这里展示二级到六级标题的锚点效果。

三级标题

四级标题

五级标题
六级标题

#列表

无序列表

  • 第一项
  • 第二项
    • 嵌套子项 A
    • 嵌套子项 B
  • 第三项

有序列表

  1. 第一步
  2. 第二步
    1. 子步骤 2.1
    2. 子步骤 2.2
  3. 第三步

任务列表

  • 已完成的任务
  • 这也是已完成的任务
  • 待完成的任务
  • 另一个待完成的任务

定义列表

术语 : 对术语的定义描述。定义列表在标准 Markdown 和许多 Markdown 扩展中得到支持。

#引用块

这是一个普通的引用块。Linlog 是一个内容优先的 Astro 主题,强调阅读体验和排版克制。

引用块可以包含多个段落,以及粗体斜体等行内格式。

VitePress 风格告警

NOTE

这是一条注意告警。用于提供额外的有用信息,帮助读者理解上下文。

TIP

这是一条提示告警。用于给出操作建议或更高效的使用方式。

IMPORTANT

这是一条重要告警。用于强调关键信息,读者不应忽略。

WARNING

这是一条警告告警。提示读者注意潜在风险或需要特别注意的内容。

CAUTION

这是一条危险告警。告知读者可能导致的负面后果或需要避免的操作。

可折叠告警

标题后跟 + 表示默认展开,跟 - 表示默认收起。

NOTE

这是一条默认展开的折叠告警,点击标题可将其收起。

TIP

这是一条默认收起的折叠告警,点击标题可展开查看。

#表格

特性支持情况说明
表格支持对齐
数学公式KaTeX 渲染
图表Mermaid 渲染
代码高亮Expressive Code
Tabs自定义指令

列对齐演示

左对齐居中对齐右对齐
Apple🍎红色
Banana🍌黄色
Cherry🍒红色

#分割线

上面是内容。


下面是分割线之后的内容。

#链接

#代码

行内代码

在句子中使用 const x = 42; 这样的行内代码。配置键 siteConfig.namethemeConfig.mode 也会渲染为行内代码样式。

带标题的代码块

src/config/site.ts
export const siteConfig = {
name: 'Linlog',
shortName: 'Narrow',
description: '一个内容优先的 Astro 主题。',
contentWidth: '56rem',
author: {
name: 'Your Name',
avatar: '/images/avatar.webp',
},
}

带高亮的代码块(行号标记)

theme.ts
type ColorMode = 'light' | 'dark' | 'auto';
// 高亮这一行
export function setMode(mode: ColorMode) {
// 以下三行被高亮
const isDark = mode === 'dark'
|| (mode === 'auto'
&& window.matchMedia('(prefers-color-scheme: dark)').matches);
document.documentElement.classList.toggle('dark', isDark);
}

其他语言代码块

hello.py
def greet(name: str) -> str:
"""返回问候语"""
return f"Hello, {name}! Welcome to Linlog."
if __name__ == "__main__":
print(greet("World"))
终端命令
pnpm install
pnpm dev
pnpm build
package.json
{
"name": "linlog",
"version": "1.0.0",
"scripts": {
"dev": "astro dev",
"build": "astro build",
"preview": "astro preview"
}
}
global.css
@import "tailwindcss";
@plugin "@tailwindcss/typography";
.prose {
max-width: 65ch;
color: var(--color-text);
}
组件示例
<article class="prose">
<h1>文章标题</h1>
<p>这是一段文章内容,包含<strong>粗体</strong><em>斜体</em></p>
</article>

#Tabs 标签页

interface Post {
title: string;
pubDate: Date;
tags: string[];
draft: boolean;
}
const posts: Post[] = await getCollection('posts');
const published = posts.filter(p => !p.data.draft);

#折叠面板

点击展开 — 查看详细配置说明

这是一段折叠内容。折叠面板适合放置:

  • 详细配置示例
  • 扩展阅读材料
  • 不希望在首屏展示的长篇内容

折叠面板使用 HTML <details> 元素实现,支持无障碍访问和键盘操作。默认状态下内容被折叠,点击摘要区域展开。

// 折叠面板中的代码块同样支持语法高亮
export const advancedConfig = {
enableFeatureX: true,
maxRetries: 3,
timeout: 5000,
};
默认展开的折叠面板

这个面板带有 open 属性,默认是展开状态。适合放置希望读者看到的补充信息。

场景推荐做法
补充说明折叠面板
关键信息直接展示
代码示例Tabs/代码块

代码块行级折叠(Expressive Code)

除了上面的整块折叠面板,pluginCollapsibleSections 还能在单个代码块内部折叠指定行区间。在围栏 meta 里用 collapse={起始行-结束行} 指定,多个区间用逗号分隔。折叠区会收成一行 “N collapsed lines” 摘要,点击展开:

// 第 1 行 — 始终可见
const data = {
id: 1001,
4 collapsed lines
name: "demo", // 折叠区开始:第 4 行
active: true,
tags: ["md"],
version: "2.0.0", // 折叠区结束:第 7 行
};
// 第 9 行 — 始终可见

上面这段的实际效果:第 4–7 行收起成一行摘要,点一下展开。这区别于 ::::folding{} 折叠面板(折叠任意内容块),它只折叠代码,适合隐藏长文件里不重要的中间片段。

相关 meta:collapseStyle 可选 github(默认,<details> 展开)、collapsible-start / collapsible-end(向下 / 向上展开);collapsePreserveIndent={false} 可关闭折叠摘要的缩进对齐。

#数学公式

行内公式

爱因斯坦质能方程:E=mc2E = mc^2。勾股定理:a2+b2=c2a^2 + b^2 = c^2。欧拉恒等式:eiπ+1=0e^{i\pi} + 1 = 0

块级公式

二次方程求根公式:

x=b±b24ac2ax = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}

傅里叶变换:

f^(ξ)=f(x)e2πixξdx\hat{f}(\xi) = \int_{-\infty}^{\infty} f(x) \, e^{-2\pi i x \xi} \, dx

矩阵表示:

(abcd)(xy)=(ax+bycx+dy)\begin{pmatrix} a & b \\ c & d \end{pmatrix} \begin{pmatrix} x \\ y \end{pmatrix} = \begin{pmatrix} ax + by \\ cx + dy \end{pmatrix}

多行公式:

×B1cEt=4πcjE=4πρ×E+1cBt=0B=0\begin{aligned} \nabla \times \vec{\mathbf{B}} - \frac{1}{c} \, \frac{\partial\vec{\mathbf{E}}}{\partial t} &= \frac{4\pi}{c}\vec{\mathbf{j}} \\ \nabla \cdot \vec{\mathbf{E}} &= 4\pi\rho \\ \nabla \times \vec{\mathbf{E}} + \frac{1}{c} \, \frac{\partial\vec{\mathbf{B}}}{\partial t} &= \vec{\mathbf{0}} \\ \nabla \cdot \vec{\mathbf{B}} &= 0 \end{aligned}

#Mermaid 图表

流程图

开始

条件判断

执行操作

执行备选

输出结果

结束

开始

条件判断

执行操作

执行备选

输出结果

结束

时序图

数据库后端前端用户数据库后端前端用户发起请求API 调用查询数据返回结果JSON 响应渲染页面
数据库后端前端用户数据库后端前端用户发起请求API 调用查询数据返回结果JSON 响应渲染页面

类图

belongs to

Post

+String title

+Date pubDate

+String[] tags

+Boolean draft

+getUrl() : String

+getReadingTime() : Number

Series

+String title

+Post[] chapters

+getProgress() : Number

belongs to

Post

+String title

+Date pubDate

+String[] tags

+Boolean draft

+getUrl() : String

+getReadingTime() : Number

Series

+String title

+Post[] chapters

+getProgress() : Number

甘特图

2026-07-012026-07-032026-07-052026-07-072026-07-092026-07-112026-07-132026-07-152026-07-172026-07-192026-07-212026-07-232026-07-252026-07-27需求分析 原型设计 后端开发 前端开发 集成测试 设计开发测试项目开发计划
2026-07-012026-07-032026-07-052026-07-072026-07-092026-07-112026-07-132026-07-152026-07-172026-07-192026-07-212026-07-232026-07-252026-07-27需求分析 原型设计 后端开发 前端开发 集成测试 设计开发测试项目开发计划

#图片展示

单张图片

一张安静的风景照片
图:安静的风景

图片组(自动启用图库)

点击任意图片可以启动灯箱查看大图。

#视频嵌入

Bilibili 视频

YouTube 视频

#链接卡片

Astro 官网
Astro 是一个现代化的静态站点生成器,支持多种 UI 框架,默认输出零 JavaScript。
GitHub
全球最大的代码托管平台,数百万开发者在这里协作、构建和分享软件。

站内文章自动卡片(post 填文章 entry id,标题/描述/链接自动填充):

Git 从诞生到设计理念
从 Linux 内核开发的危机讲起,理解 Git 的分布式设计哲学、核心优势,以及它与 SVN 等版本控制系统的本质区别
2026-05-13版本控制#Git#版本控制#入门教程

#总结

以上就是 Linlog 主题支持的所有 Markdown 和扩展功能。这些功能覆盖了技术写作和内容创作的常见需求:

类别功能
基础排版标题、粗体、斜体、删除线、高亮、键盘按键、行内剧透
结构元素列表、引用块、表格、分割线、脚注
告警提示NOTE、TIP、IMPORTANT、WARNING、CAUTION
代码展示行内代码、带语法高亮的代码块、代码标题、行高亮
扩展内容Tabs 标签页、折叠面板、details/summary 折叠
多媒体图片、图片组/图库、视频嵌入(Bilibili/YouTube)
学术/技术KaTeX 数学公式、Mermaid 图表
引用链接卡片(外部链接 + 站内文章自动卡片)

渲染效果在浅色和深色模式下都能正常展示。

#Footnotes

  1. 这是一条脚注内容,用于展示脚注渲染效果。

版权许可

本文基于 CC BY-NC-SA 4.0 发布,转载需署名且不可用于商业目的。

© 2026 linlinli000