LLMS

font-family: mathで数式に適切なフォントを適用する

font-family: mathは数学的表現に特化した一般フォントファミリーです。上付き・下付き文字、複数行にまたがる括弧、数式の入れ子構造などを適切に表示できます。Baseline 2025で主要ブラウザすべてで利用可能になりました。

公開: 2026年1月12日(月)
更新: 2026年1月12日(月)

はじめに

Webページで数式を表示する際、適切なフォントがないと正しく表示されないことがあります。 上付き文字(x2x^2)や下付き文字(ana_n)、分数(ab\frac{a}{b})、積分記号(\int)など、数学特有の表現には専用のグリフが必要です。

CSSではBaseline 2025より、font-familyプロパティとしてmathを指定することで数式を適切に表示できるようになりました。

font-family: mathとは

mathは数学的表現に特化した一般フォントファミリーです。以下のような表現に対応しています。

  • 上付き文字・下付き文字: x2x^2ana_nなどの指数や添字
  • 複数行にまたがる括弧: (ab)\left( \frac{a}{b} \right)
  • 数式の入れ子構造: abc\frac{\frac{a}{b}}{c}
  • Blackboard bold: N\mathbb{N}Z\mathbb{Z}R\mathbb{R}など

一般フォントファミリーとは、特定のフォント名ではなくフォントの種類を指定するキーワードです。 serif(明朝体)、sans-serif(ゴシック体)、monospace(等幅)などがあり、mathはその数式版として追加されました。

使い方

一般フォントファミリーなので、フォントの読み込み指定は不要で、以下のように指定するだけで使用できます。

.math-expression {
  font-family: math;
}

<math>要素はUAスタイルシートでfont-family: mathが指定することになっています。

01x2dx=13
<!-- 上記の数式を表示するHTML -->
<math display="block">
  <mrow>
    <msubsup>
      <mo>∫</mo>
      <mn>0</mn>
      <mn>1</mn>
    </msubsup>
    <msup><mi>x</mi><mn>2</mn></msup>
    <mi>dx</mi>
  </mrow>
  <mo>=</mo>
  <mfrac>
    <mn>1</mn>
    <mn>3</mn>
  </mfrac>
</math>

使われるフォント

font-family: mathを指定すると、ブラウザが数式表示に適したフォントを自動的に選択します。 serifを指定したときに明朝体が選ばれるのと同じ仕組みです(実際に選ばれるフォントは環境によって異なります)。

どのフォントが選ばれるかはブラウザとOSの組み合わせによって異なります。 WindowsにはCambria Math、macOS(Ventura以降)にはSTIX Two Mathがプリインストールされているため、多くの環境では追加のインストールなしこれらが利用されます。

デモ

Playground

ピタゴラスの定理(上付き文字)

x² + y² = z²

等差数列(上付き・下付き文字)

aₙ = a₁ + (n−1)d

数の集合(Blackboard bold)

ℕ ⊂ ℤ ⊂ ℚ ⊂ ℝ ⊂ ℂ

積分記号

∫₀^∞ e⁻ˣ dx = 1

おわりに

font-family: mathを紹介しました。

font-familymathにするだけで、数式に適切なフォントが適用され、見やすく美しい表示が可能になる便利な機能です。

数式を簡単に表示する際はぜひ活用してみてください。

0
もくじ

©︎ 2024〜2025 k8o. All Rights Reserved.