Web単位の「px・rem・em」使い分け決定版!レスポンシブ設計で失敗しないための実務ガイド
#design
なぜ、あなたの作ったサイトは「デバイスによって崩れる」のか?

「博士!助けてくれだぜ!デザイン通りに作ったはずなのに、スマホで見ると文字がデカすぎたり、画像がぼやけたりして、もうめちゃくちゃなんだぜ!」

「フォッフォッフォ、それはWebの『単位』の迷宮に迷い込んだようじゃな。現代のWebは、絶対的な長さではなく『相対的な関係性』で設計しなきゃいかんのじゃ。」

「もう、アンタはいつも
px 固定で書くからよ。Retinaディスプレイの仕組みとか、ユーザーのブラウザ設定を無視しちゃダメでしょ?博士、単位の黄金律を教えてあげて!」1. ピクセル(px)の嘘と、デバイスピクセル比(DPR)の罠

「CSSの
1px は、実はディスプレイの『1ドット』ではないんじゃ。Retinaディスプレイでは、実際には4ドット以上使って表現されておるんじゃよ。」
「ええっ!
1px なのに1ドットじゃないのか!?なんだか騙された気分だぜ!だから画像がぼやけて見えたのか…。」
「pxはあくまで『仮想の単位』なの。フォントサイズには
rem, 幅には % や vw を使うのが今の常識よ。境界線だけは px を死守するのがコツね!」実務チェックポイント
- フォントサイズ:ユーザーの設定を尊重する
remを優先。 - レイアウト幅:画面に追従する
%やvwを活用。 - 境界線(Border):計算ズレを防ぐため、ここだけは
pxを死守。
2. 最強の救世主「rem(レム)」:アクセシビリティへの架け橋

「
rem はルートのフォントサイズを基準にする単位じゃ。これを使えば、ユーザーがブラウザ設定で文字を大きくしても、サイトがそれに応えてくれるんじゃよ。」
「ユーザーの設定を尊重する…なんだかおもてなしみたいだぜ!でも
em とは何が違うんだ?」
「
em は親要素を基準にするから、入れ子になると計算が雪だるま式に大変になるの!基本は rem を使い、局所的に em を使うのがプロの使い分けよ。」🚨 現場の注意点:em と rem の混同
em は「親要素」を基準にするため、入れ子構造になると計算が雪だるま式に複雑になり、意図しないサイズ崩れを招きます。基本は rem を使い、コンポーネント内のアイコンサイズなど、局所的なスケーリングにのみ em を使うのがプロの使い分けです。
3. 実務を加速させる「最新関数」と「変換ツール」の活用

「最近は
clamp() 関数という便利なものもあってな。スマホとPCでサイズを滑らかに変えられるぞい。」
「一行で書けるのか!?でも『この24pxは何remなんだっけ?』って電卓叩くのが面倒くさいぜ!」

「だから当サイトの変換ツールを使うのよ!一瞬で相互変換できるから、計算のストレスから解放されるわ。クリエイティブなことに集中しなさいよ!」
まとめ:単位の選択は「おもてなし」である

「博士、僕、もう
px 地獄には戻らないぜ! rem を使いこなして、呼吸するようなサイトを作るぜ!」
「保守性も上がるし、いいことずくめね。みんなも正しい単位でおもてなししましょう!」

「フォッフォッフォ、ルートのサイズを変えるだけで全体が広がる快感、ぜひ味わってみるのじゃぞい!」
「最近の若いもんは
remばっかり使いおって…」とボヤく老兵もいるが、実はremを使う最大のメリットは「保守性」なんじゃ。後から「サイト全体の余白をちょっと広げたいな」となった時、ルートのサイズを1px変えるだけで、サイト全体が呼吸するように一斉に広がる。この快感を知ったら、もうpx地獄には戻れんぞい!