Markdown 文字和图片居中
Markdown 没有对齐语法,居中要用 HTML:<p align="center">文字</p>。本文介绍文字、图片和标题的居中写法,以及 Markdown 唯一能自己对齐的地方:表格列。
简短回答
Markdown 怎么让文字居中?
用带 align="center" 的 HTML 标签包住文字:<p align="center">居中的文字</p>。GitHub 保留 align 属性但会去掉 style,所以这种写法在 GitHub 上有效。允许样式的地方也可以用 style="text-align: center"。
Markdown
<p align="center">这一行居中显示。</p>显示效果
这一行居中显示。
居中和对齐的示例
下面的示例都用 align 属性,GitHub 和大多数 Markdown 预览都支持。
图片居中
把图片放进居中的段落。用 <img> 标签还可以同时设置宽度。
Markdown
<p align="center">
<img src="/samples/landscape.svg" alt="蓝天下的绿色山丘" width="240">
</p>显示效果
标题居中
标题也可以加这个属性,很多 README 开头的标题区就是这样写的。
Markdown
<h1 align="center">项目名称</h1>
<p align="center">一句话介绍这个项目。</p>显示效果
项目名称
一句话介绍这个项目。
居中区域里写 Markdown
用 <div align="center"> 包住 Markdown,并在里面留空行,Markdown 才会生效。
Markdown
<div align="center">
这里的**加粗**、`代码`和[链接](https://example.com)都有效。
</div>显示效果
这里的加粗、代码和链接都有效。
右对齐
align="right" 用法相同,适合落款和日期。
Markdown
<p align="right">编辑部,2026 年 10 月</p>显示效果
编辑部,2026 年 10 月
表格列居中
表格是 Markdown 唯一能自己对齐的地方:短横线行里加冒号就能让一列居中。
Markdown
| 姓名 | 分数 |
| --- | :---: |
| 张三 | 92 |
| 李四 | 87 |显示效果
| 姓名 | 分数 |
|---|---|
| 张三 | 92 |
| 李四 | 87 |
一排徽章居中
同一个居中段落里的多张图片或多个链接会一起排在中间。
Markdown
<p align="center">
<img src="/samples/badge.svg" alt="文档状态">
<img src="/samples/badge.svg" alt="文档状态">
</p>显示效果
各平台的居中支持
哪种属性有效,取决于应用保留多少 HTML。
| 应用 | 支持情况 | 说明 |
|---|---|---|
| GitHub / GitLab | 有差异 | align="center" 有效,style 属性会被去掉。 |
| VS Code / Typora | 支持 | 预览中 align 和 style 都有效。 |
| Obsidian | 支持 | 阅读视图中 align 和 style 都有效。 |
| Notion | 不支持 | 文字不能居中,图片可以在菜单里设置对齐。 |
| Discord / Slack | 不支持 | 没有对齐功能,文字总是靠左。 |
常见问题
Markdown 有居中语法吗?
没有。除了表格列,CommonMark 和 GitHub 风格 Markdown 都没有对齐语法,在允许的地方用 HTML。
GitHub 上怎么让图片居中?
放进居中的段落:
<p align="center"><img src="image.png" alt="…" width="300"></p>。为什么 style="text-align: center" 在 GitHub 上无效?
style="text-align: center" 在 GitHub 上无效?GitHub 出于安全考虑会去掉
style 属性,请改用它会保留的 align 属性。为什么居中的 <div> 里 Markdown 原样显示?
<div> 里 Markdown 原样显示?在
<div align="center"> 后面和 </div> 前面各空一行。没有空行时,内容会被当成 HTML 的一部分。能用 <center> 标签吗?
<center> 标签吗?浏览器仍然支持,但它是已经废弃的 HTML,有些网站会去掉它。用
align="center" 更稳妥。怎样让整个 README 开头居中?
用一个
<div align="center"> 包住 <img> 写的标志、标题和徽章;如果里面混有 Markdown,记得留空行。