强调与斜体

加粗和斜体是文档里最频繁出现的两种强调,语法也只有两三个符号。但它们和标题、列表一样受「左右边界」约束:符号紧贴文字时才是强调,隔着空格时什么也不是,出现在行首时甚至会变成列表。这一页把 * 和 _ 的区别、以及什么时候该用哪种强调讲清楚。

语法

*斜体* 或 _斜体_
**粗体** 或 __粗体__
***粗斜体*** 或 ___粗斜体___

符号的数量决定强调的层级:一个星号是斜体,两个是粗体,三个是粗斜体。对应的 HTML 标签分别是 <em> 和 <strong>,两者可以叠加:

<p><em>斜体</em> 或 <em>斜体</em></p>
<p><strong>粗体</strong> 或 <strong>粗体</strong></p>
<p><em><strong>粗斜体</strong></em> 或 <em><strong>粗斜体</strong></em></p>

* 和 _ 有什么不同

绝大多数情况下两者等价,唯一的实质差别出现在单词内部:规范不允许用下划线 _ 在一个词的中间做强调,星号 * 则可以。

文字_斜体_文字 与 snake_case_name
文字*斜体*文字
<p>文字_斜体_文字 与 snake_case_name</p>
<p>文字<em>斜体</em>文字</p>

这正是写中文时优先用 * 的原因:snake_case_name 这样的变量名、__init__ 这样的方法名都会因为这条规则被原样保留,而中文没有词边界,写成 文字_斜体_文字 就会直接失效。

建议

  • 语义化使用:斜体强调单词,粗体强调重点。
  • 避免过度使用导致视觉噪音。

强调是用来标记「读者最容易看漏」的信息,不是用来排版的。一段文字里粗体超过两三处,读者反而会全部略过;把重点交给句子结构本身(拆句、换行、单独成段)通常比加粗更有效。斜体适合标注术语、书名和补充说明,粗体适合点出结论和关键动作。

常见坑

写法实际渲染原因
文字_斜体_文字原样文字下划线不能用在单词内部
2*3*42<em>3</em>4星号紧贴数字,被识别成强调
* 斜体(行首加空格)无序列表行首的 * 是列表标记
* 斜体 *(内侧有空格)原样文字强调符号内侧不能有空格
第一段的 * 想跨到下一段才闭合原样文字强调不能跨越段落边界

练习

把下面这句话改写成 Markdown,要求「注意」用粗体,「不能」用斜体,并且变量名保持原样、不被强调。

注意:snake_case_name 是变量名,不能用作强调标记。
行内代码

解题思路: 粗体用一对星号,斜体用一对单星号。关键在于变量名不能被当成强调标记:句子里已经出现了 snake_case_name,其中的下划线在部分渲染器里会被当作强调起始符,所以必须用行内代码把变量名括起来,代码内的内容不会被解析为强调。

详细步骤:

  1. 「注意」用粗体:写成 **注意**。
  2. 「不能」用斜体:写成 *不能*。
  3. 变量名用行内代码括起来:写成 `snake_case_name`,代码块内的下划线不参与强调解析。
  4. 检验:渲染后「注意」加粗、「不能」变斜体,变量名保持等宽原样。

最终答案:

**注意**:`snake_case_name` 是变量名,*不能*用作强调标记。

小结

读完这一页,你应当能写出斜体、粗体和粗斜体,能说清星号与下划线在单词内部的差别,也能在看到「星号原样显示」时立刻想到内侧空格、行首列表或数字相邻这几个原因。接下来整理文档时,你会更克制地使用强调,把留白和结构留给更重要的信息。

发现内容有问题?

告诉我们哪里需要改进。