osgsm.io
HomeBlog@tailwindcss/typography を使ってタイポグラフィを一括設定する

@tailwindcss/typography を使ってタイポグラフィを一括設定する

Published Dec 28, 2022
Updated Jan 13, 2025

Tailwind CSS には、@tailwindcss/typography という公式プラグインがあります。このプラグインを使うことで 、美しく読みやすいタイポグラフィを一括で設定できます。

今回は、@tailwindcss/typography の導入と簡単な紹介をしていきます。

プラグインのインストールと設定

まずはインストールから。

Terminal
yarn add -D @tailwindcss/typography

次に tailwind.config.js ファイルにプラグインを追加します。

tailwind.config.js
module.exports = {
  theme: {
    // ...
  },
  plugins: [
    require('@tailwindcss/typography'),
    // ...
  ],
}

これで準備は完了です。

基本的な使い方

基本的には、タイポグラフィのスタイルを設定したい要素に prose クラスを付与するだけです。

例えば、 Post コンポーネントが投稿内容にあたる場合、その article"prose" を追加します。

const Post = ({ postData }) => {
  return (
    <Layout>
      {/* ... */}
      <article className="prose">
        {/* ... */}
      </article>
    </Layout>
  );
};

このようにタイポグラフィを設定したい要素に "prose" class を追加するだけで、簡単に一括設定が可能です。

prose 関連のスタイルの調整

このプラグインの便利なところは、 modifier class を使って、スタイルを適宜調整できることです。

例えば、グレースケールやタイプスケールなどが変更可能です。

グレースケールの変更

グレースケールは、次の5つの中からプロジェクトに合うものを選べます。デフォルトでは prose-gray が適用されています。

  • prose-gray (default)
  • prose-slate
  • prose-zinc
  • prose-neutral
  • prose-stone

ちなみに、それぞれがどのような配色かは Customizing Colors - Tailwind CSS で確認できます。

デフォルトでは、やや青みがかったグレースケールが適用されているので、完全に無彩色にしたい場合は、次のように prose-neutral class を使用します。

<article className="prose prose-neutral">
  {/* ... */}
</article>

このように、 modifier class を追加するときは、 prose class も必要なので要注意です。

タイプスケールの変更

Size modifiers を使えば、全体的なタイプスケールを変更できます。使用できるクラスは次の通りで、併記しているのは body のフォントサイズです。

  • prose-sm 0.875rem (14px)
  • prose-base (default) 1rem (16px)
  • prose-lg 1.125rem (18px)
  • prose-xl 1.25rem (20px)
  • prose-2xl 1.5rem (24px)
<article className="prose prose-sm">
  {/* ... */}
</article>

Breakpoint modifier と組み合わせて使えば、ビューポートサイズによって異なるタイプスケールを使用できます。

<article className="prose md:prose-lg lg:prose-xl">
  {/* ... */}
</article>

その他の変更

他にも、要素ごとにスタイルを変更するための element modifiers などもあります。

例えば、画像を角丸にし、ボーダーを追加したい場合は次のように記述します。

<article className="prose prose-img:border prose-img:rounded-md">
  {/* ... */}
</article>

詳しくは、 @tailwindcss/typography - Tailwind CSS を参照してください。


このように、 @tailwindcss/typography を使えば、簡単にタイポグラフィを設定できます。設定の変更が柔軟に行える点も素晴らしいですね。

とは言え、欧文のタイポグラフィ設定が、和文に適さない部分もあるかと思います。なので、その辺は適宜調整していく必要がありそうですね。


参考