⚗️ mhchem 化学公式排版演示

使用 mhchem 扩展优雅地排版化学式和化学方程式

← 返回首页

📖 什么是 mhchem?

mhchem 是 MathJax 和 LaTeX 的一个扩展包,专门用于排版化学式和化学方程式。它提供了简单直观的语法来表示化学符号、反应、状态等。

核心命令:\ce{...} 用于排版化学式和反应。

为什么用 \ce{...} 括起来?字母 ce 来自英语 Chemical Equation(化学方程式),也可以记成「Chemistry Expression(化学表达式)」。花括号里的内容会交给 mhchem 按化学规则解析(如下标、电荷、箭头、条件等),而不是按普通数学公式去读;所以看到化学式或反应式,就写 \ce{...},相当于对排版引擎说:「这一段按化学来排。」

和整个 MathJax 的关系:mhchem 不是「MathJax 的精简版」,而是接在 MathJax TeX 输入上的一个扩展包(插件)。本页只讲化学排版这一支;MathJax 还能排矩阵、积分、对齐公式等大量数学内容,并支持多种其它 TeX 扩展。想查通用命令或启用更多扩展,请看本页底部「更多资源」里的延伸阅读链接。

💡 提示: 左侧源码可直接编辑:输入后约 0.3 秒自动渲染;也可点击框外(失焦)或按 Ctrl+Enter(Mac 为 ⌘+Enter立即渲染。右侧「复制 SVG」可将矢量图复制到剪贴板。

🧪 基础化学式

简单分子式

\ce{H2O}
$\ce{H2O}$
\ce{CO2}
$\ce{CO2}$
\ce{C6H12O6}
$\ce{C6H12O6}$

复杂化学式

\ce{H2SO4}
$\ce{H2SO4}$
\ce{Ca(OH)2}
$\ce{Ca(OH)2}$
\ce{CuSO4.5H2O}
$\ce{CuSO4.5H2O}$

⚡ 离子和电荷

简单离子

\ce{H+}
$\ce{H+}$
\ce{OH-}
$\ce{OH-}$
\ce{SO4^2-}
$\ce{SO4^2-}$

复杂离子

\ce{Fe^2+}
$\ce{Fe^2+}$
\ce{Fe^3+}
$\ce{Fe^3+}$
\ce{[Ag(NH3)2]+}
$\ce{[Ag(NH3)2]+}$

⚖️ 化学方程式

基本反应

\ce{2H2 + O2 -> 2H2O}
$$\ce{2H2 + O2 -> 2H2O}$$
\ce{CH4 + 2O2 -> CO2 + 2H2O}
$$\ce{CH4 + 2O2 -> CO2 + 2H2O}$$

可逆反应

\ce{N2 + 3H2 <=> 2NH3}
$$\ce{N2 + 3H2 <=> 2NH3}$$
\ce{CO2 + H2O <=> H2CO3}
$$\ce{CO2 + H2O <=> H2CO3}$$

平衡反应

\ce{A + B <-> C + D}
$$\ce{A + B <-> C + D}$$

➡️ 各种反应箭头

与上文相同:左侧为 mhchem 公式源码(可编辑),右侧实时渲染。小标题括号里的「HTML」指在网页 HTML 里若要显示箭头类字符时常用的转义写法;在左侧编辑区请按 LaTeX 习惯直接输入真实字符(例如减号与大于号组成箭头)。

单向反应(HTML 示例:\ce{->}

\ce{->}
$\ce{->}$

逆向反应(HTML:\ce{<-}

\ce{<-}
$\ce{<-}$

平衡反应(HTML:\ce{<->}

\ce{<->}
$\ce{<->}$

可逆反应(HTML:\ce{<=>}

\ce{<=>}
$\ce{<=>}$

共振结构(HTML:\ce{<<=>>}

\ce{<<=>>>}
$\ce{<<=>>>}$

🔥 反应条件

在箭头上下添加条件

\ce{A ->[上方条件][下方条件] B}
$$\ce{A ->[上方条件][下方条件] B}$$
\ce{2KClO3 ->[加热][MnO2] 2KCl + 3O2 ^}
$$\ce{2KClO3 ->[加热][MnO2] 2KCl + 3O2 ^}$$
\ce{CaCO3 ->[高温] CaO + CO2 ^}
$$\ce{CaCO3 ->[高温] CaO + CO2 ^}$$
\ce{N2 + 3H2 <=>[催化剂][高温高压] 2NH3}
$$\ce{N2 + 3H2 <=>[催化剂][高温高压] 2NH3}$$

🌡️ 状态符号

使用括号表示物质状态:(s) 固态、(l) 液态、(g) 气态、(aq) 水溶液

\ce{NaCl(s)}
$$\ce{NaCl(s)}$$
\ce{H2O(l)}
$$\ce{H2O(l)}$$
\ce{CO2(g)}
$$\ce{CO2(g)}$$
\ce{H+(aq) + OH-(aq) -> H2O(l)}
$$\ce{H+(aq) + OH-(aq) -> H2O(l)}$$

⬇️ 沉淀和气体符号

使用 v 表示沉淀(↓),使用 ^ 表示气体(↑)

\ce{AgNO3 + NaCl -> AgCl v + NaNO3}
$$\ce{AgNO3 + NaCl -> AgCl v + NaNO3}$$
\ce{CaCO3 + 2HCl -> CaCl2 + H2O + CO2 ^}
$$\ce{CaCO3 + 2HCl -> CaCl2 + H2O + CO2 ^}$$
\ce{BaCl2 + Na2SO4 -> BaSO4 v + 2NaCl}
$$\ce{BaCl2 + Na2SO4 -> BaSO4 v + 2NaCl}$$

☢️ 同位素表示

\ce{^{12}_6C}
$$\ce{^{12}_6C}$$
\ce{^{14}_6C}
$$\ce{^{14}_6C}$$
\ce{^{235}_{92}U}
$$\ce{^{235}_{92}U}$$
\ce{^{238}_{92}U}
$$\ce{^{238}_{92}U}$$

🔄 氧化还原反应

\ce{Zn + Cu^2+ -> Zn^2+ + Cu}
$$\ce{Zn + Cu^2+ -> Zn^2+ + Cu}$$
\ce{2Fe^2+ + Cl2 -> 2Fe^3+ + 2Cl-}
$$\ce{2Fe^2+ + Cl2 -> 2Fe^3+ + 2Cl-}$$
\ce{MnO4- + 8H+ + 5e- -> Mn^2+ + 4H2O}
$$\ce{MnO4- + 8H+ + 5e- -> Mn^2+ + 4H2O}$$

🧬 有机化学

基本有机物

\ce{CH3-CH2-OH}
$$\ce{CH3-CH2-OH}$$
\ce{CH3COOH}
$$\ce{CH3COOH}$$
\ce{C6H5-NH2}
$$\ce{C6H5-NH2}$$

有机反应

\ce{CH2=CH2 + H2 ->[Ni][加热] CH3-CH3}
$$\ce{CH2=CH2 + H2 ->[Ni][加热] CH3-CH3}$$
\ce{CH3COOH + CH3OH <=>[H2SO4][加热] CH3COOCH3 + H2O}
$$\ce{CH3COOH + CH3OH <=>[H2SO4][加热] CH3COOCH3 + H2O}$$

🌟 综合示例

燃烧反应

\ce{C3H8 + 5O2 ->[点燃] 3CO2 + 4H2O}
$$\ce{C3H8 + 5O2 ->[点燃] 3CO2 + 4H2O}$$

酸碱中和

\ce{HCl + NaOH -> NaCl + H2O}
$$\ce{HCl + NaOH -> NaCl + H2O}$$

光合作用

\ce{6CO2 + 6H2O ->[光照][叶绿素] C6H12O6 + 6O2 ^}
$$\ce{6CO2 + 6H2O ->[光照][叶绿素] C6H12O6 + 6O2 ^}$$

电解水

\ce{2H2O ->[电解] 2H2 ^ + O2 ^}
$$\ce{2H2O ->[电解] 2H2 ^ + O2 ^}$$

氨的合成

\ce{N2 + 3H2 <=>[Fe][高温高压] 2NH3}
$$\ce{N2 + 3H2 <=>[Fe][高温高压] 2NH3}$$

双水解反应

\ce{Al2(SO4)3 + 6NaHCO3 -> 2Al(OH)3 v + 3Na2SO4 + 6CO2 ^}
$$\ce{Al2(SO4)3 + 6NaHCO3 -> 2Al(OH)3 v + 3Na2SO4 + 6CO2 ^}$$

✏️ 交互式试验区

完整代码:

\ce{H2O}

渲染结果:

$$\ce{H2O}$$

📝 常用语法参考

每条对应原表格中的一行:功能 · 语法要点在上方说明,下方为可编辑示例与渲染。

下标 · 语法:直接输入数字

\ce{H2O}
$\ce{H2O}$

上标(电荷) · 语法:^

\ce{Fe^3+}
$\ce{Fe^3+}$

反应箭头 · 语法:在公式里写 ->(减号 + 大于号)

\ce{A -> B}
$\ce{A -> B}$

可逆箭头 · 语法:<=>

\ce{A <=> B}
$\ce{A <=> B}$

反应条件 · 语法:->[上][下]

\ce{A ->[条件] B}
$\ce{A ->[条件] B}$

沉淀 · 语法:v

\ce{AgCl v}
$\ce{AgCl v}$

气体 · 语法:^(与电荷上标同一字符,由上下文区分)

\ce{CO2 ^}
$\ce{CO2 ^}$

状态 · 语法:(s/l/g/aq)

\ce{H2O(l)}
$\ce{H2O(l)}$

电子 · 语法:e-

\ce{2e-}
$\ce{2e-}$

同位素 · 语法:^{质量数}_{原子序数}

\ce{^{14}_6C}
$\ce{^{14}_6C}$

💡 提示和技巧

提示 1: mhchem 会自动识别元素符号并正确排版,无需手动处理大小写。
提示 2: 使用空格或 + 号连接不同的物质,mhchem 会自动处理间距。
提示 3: 对于复杂的化学式,可以使用括号 () 来分组,如 Ca(OH)2。
提示 4: 在网页中使用时,需要在 MathJax 配置中加载 mhchem 扩展。
提示 5: mhchem 可以与普通的数学公式混合使用,例如:$K_a = \ce{[H+][A-]/[HA]}$

🔗 更多资源

官方文档

• MathJax mhchem 扩展文档: https://mhchem.github.io/MathJax-mhchem/

• MathJax 官方文档(mhchem 在扩展列表中的说明): https://docs.mathjax.org/en/latest/input/tex/extensions/mhchem.html

• MathJax 官网: https://www.mathjax.org/

延伸阅读(MathJax 通用能力与更多扩展)

下面链接帮助你在「化学语法」之外,使用 MathJax 的完整数学排版能力:

配置说明

要在你的网页中使用 mhchem,需要在 MathJax 配置中添加:

window.MathJax = { tex: { packages: {'[+]': ['mhchem']} }, loader: { load: ['[tex]/mhchem'] } };
💡 关于 CDN 加载:

本页面使用了多个 CDN 备用源来加载 MathJax:

  • 首选: cloudflare CDN(全球加速)
  • 备用1: bootcdn(国内优化)
  • 备用2: jsdelivr(备用方案)

如果页面加载缓慢,请耐心等待或刷新页面。如果长时间无法加载,可能是网络问题。

← 返回首页