You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用CSS为Quarto HTML报告单独设置数学公式字体?

解决Quarto报告公式字体异常问题

问题原因

你通过全局CSS选择器*将所有元素字体统一设为Aktiv Grotesk,但该字体未适配数学公式专用符号(比如平方根),导致符号显示异常。

方案1:用CSS单独指定公式字体

Quarto的HTML输出中,行内公式会被包裹在<span class="math inline">标签中,块级公式对应<span class="math display">标签。你可以针对性修改CSS,为公式元素单独配置适配数学符号的字体:

修改styles2.css代码如下:

p {
  font-size: 11pt;
  font-family: 'Aktiv Grotesk';
  color: black;
}

/* 全局字体规则排除公式元素 */
*:not(.math) {
  font-family: 'Aktiv Grotesk', Times, serif;
}

/* 为公式设置专用数学字体 */
.math {
  font-family: 'Latin Modern Math', 'TeX Gyre Pagella Math', serif;
}

说明:

  • :not(.math)确保全局字体规则不作用于公式元素
  • 给.math类指定专门的数学字体,这类字体包含完整的数学符号集,能正常显示平方根等元素

方案2:通过Quarto配置优化公式渲染

无需修改CSS,直接在Quarto文档的YAML配置中调整KaTeX的渲染参数,让公式自动适配合适字体:

修改文档头部的YAML:

---
format: 
  html:
    css: styles2.css
    katex:
      font: "Latin Modern Math"
      global-options:
        strict: false
---

或者设置KaTeX自动选择字体:

---
format: 
  html:
    css: styles2.css
    katex:
      font: "auto"
---

这样公式会自动匹配适配的数学字体,同时正文保持Aktiv Grotesk字体不变。

方案3:局部手动修复个别公式

如果仅需修复特定公式,可在Markdown中用HTML标签临时指定字体:

Tilt magnitude is calculated using <span style="font-family: 'Latin Modern Math'">$Mag = \sqrt{N^{2} + W^{2}}$</span>.

内容的提问来源于stack exchange,提问作者Eric Krantz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 13:32:11