CSS

px・em・rem の違い

初級

読み方:ピクセル・エム・レム のちがい|英語:px vs em vs rem

pxは固定サイズ、emは親要素の文字サイズ基準、remはルート要素の文字サイズ基準の単位。

やさしい説明

pxは固定サイズ。emは親要素のフォントサイズ基準。remはルート(html)のフォントサイズ基準で、レスポンシブデザインに便利です。

px は「絶対的な大きさ」で、どこで使っても同じサイズです。rem は「相対的な大きさ」で、ユーザーがブラウザの文字サイズを変更すると一緒に変わります。

現代のWeb開発では rem を基本にするのがおすすめです。アクセシビリティ(文字サイズ変更への対応)に優れています。

具体例・使い方

/* px: 常に16ピクセル(固定) */
font-size: 16px;

/* rem: htmlの文字サイズ×1倍(デフォルト16px) */
font-size: 1rem;    /* = 16px */
font-size: 1.5rem;  /* = 24px */

/* em: 親の文字サイズ×倍率(入れ子で変わる) */
font-size: 1.2em;   /* 親が16pxなら19.2px */

いつ使う?

フォントサイズや余白 → rem。ボーダーや影など細かい値 → px。親要素に比例させたい → em。迷ったら rem を使いましょう。

間違いやすいポイント

❌ emが入れ子で予想外のサイズになる

emは親のサイズを基準にするので、入れ子が深くなると計算が複雑になります。rem なら常にルート基準なので予測しやすいです。

よくある疑問

Q: どれを使えばいい?

A: 迷ったらremがおすすめです。ページ全体で統一感が出て、レスポンシブ対応もしやすいです。

Q: emが入れ子で計算が複雑になるのはなぜ?

A: emは親の文字サイズが基準なので、入れ子が深くなると掛け算になります。remならルート基準なので一定です。

関連用語

📖 関連レッスン

レッスンを見る →

関連ブログ記事

⚠️ 関連するエラー

❓ 関連するQ&A