アイコンサイズのrem変換(16px、20px、24px、32px)

標準アイコンサイズをpxからremに変換。Lucide、Material Icons、Font Awesomeなどのアイコンシステムで使用される16px、20px、24px、32pxを解説します。

Layout & Spacing

詳細な説明

標準アイコンサイズ:pxからrem

アイコンは基本的なUI要素です。主要なアイコンシステムで使用される標準サイズを紹介します:

アイコンサイズ変換テーブル

px rem 用途
12 0.75 インラインマイクロアイコン(キャレット、ドット)
14 0.875 小さいインラインアイコン(外部リンク矢印)
16 1 インラインテキストアイコン、小さいボタン
20 1.25 一部システムのデフォルト(Heroicons)
24 1.5 標準デフォルト(Material、Lucide)
32 2 中サイズ機能アイコン、ナビゲーション
40 2.5 大きな機能アイコン、空状態
48 3 ヒーローアイコン、マーケティングセクション
64 4 特大イラストレーション

アイコンシステムのデフォルト

アイコンシステム デフォルトサイズ rem
Material Icons 24px 1.5rem
Lucide React 24px 1.5rem
Heroicons 20px / 24px 1.25 / 1.5rem
Font Awesome 16px(1em) 1rem
Phosphor Icons 24px 1.5rem

アイコンにremとemのどちらを使うか

  • rem — アイコンサイズがルートに対して相対的。ページ全体で一貫性あり。
  • em — アイコンサイズが親のフォントサイズに対して相対的。近くのテキストに合わせてスケーリング。

スタンドアロンアイコン(ナビゲーション、ツールバー)にはremが一貫性のために好まれます。テキスト横のインラインアイコン(ラベル横のリンクアイコンなど)にはemを使うとテキストサイズに合わせてスケーリングされます:

.icon-inline {
  width: 1em;
  height: 1em;
}

.icon-standalone {
  width: 1.5rem;  /* 24px */
  height: 1.5rem;
}

視覚的な整列

アイコンはテキストと視覚的に整列するために微調整が必要な場合があります。16pxテキスト横の24pxアイコンは大きすぎるように見えることがあります。一般的なアプローチ:

.button-icon {
  width: 1.25rem;  /* 20px — 24pxデフォルトより少し小さい */
  height: 1.25rem;
  margin-right: 0.5rem; /* 8pxの間隔 */
}

タッチターゲットの考慮

視覚的なアイコンが24px(1.5rem)であっても、WCAG 2.5.8に基づきクリック可能な領域は最低44px x 44px(2.75rem)であるべきです。パディングでタッチターゲットを拡張してください:

.icon-button {
  width: 1.5rem;
  height: 1.5rem;
  padding: 0.625rem; /* (44 - 24) / 2 = 10px */
}

ユースケース

ユーザーがブラウザフォントサイズを調整した際にテキストとともに適切にスケーリングされるよう、Lucide Reactアイコンをremベースのサイジングで設定するフロントエンド開発者向けです。

試してみる — px ↔ rem Converter

フルツールを開く