CSSのmax-widthでのピクセル指定はレスポンシブ対応ではない。レイアウト崩れの原因となるので要注意。|デザイナー、コーチ、ディレクターズメモ|井川

igawa design.

Memo

max-widthとレスポンシブデザイン。

CSSのmax-widthはレスポンシブ対応ではない。

レスポンシブ対応の際に、max-widthでピクセル指定をしている場面がある。よくあるのがパソコン表示用の「max-width: 1000px;」や「max-width: 1100px;」などの指定だ。

実はこれは10年以上前の指定方法で、スマホが普及する以前の、主にノートパソコン用の方法である。当時のブログや参考書などにもよく記載されていた。

古い情報がアップデートされていないのかもしれないが、決して「レスポンシブ対応」ではないので、使用時には気をつけなければいけない。


どうしてmax-widthがいけないのか?

15inch前後のノートパソコンで、ユーザーがブラウザを「常に最大サイズ」にしているのであれば特に問題ないだろう。ただし、ブラウザを縮小したり、タブレットで見たりすると途端にレイアウトが崩れる。

27inchのモニターでも、ブラウザは基本的に全画面では見ないだろう。他のツールなどと画面を分割している方が普通だ。例えば半分にして使っていれば、ブラウザの横幅は13.5inchとなる。その場合でももちろんレイアウト崩れが起こる。

デバイスは増え続けている。

前述の通り、横幅1000px前後というのは10年以上も前のノートパソコン全盛期に流行ったサイズ指定なので、いまの多種多様なモニターサイズを想定しているものではない。

様々なサイズのスマホが全盛となり、様々なサイズのタブレットやノートパソコンも存在し、それぞれの解像度やアスペクト比も多様にある時代に、安易にmax-widthでピクセル指定をするのはリスキーでしかない。

デバイスごとに対応しようと頑張っても、結局は無駄にブレイクポイントが増えてしまう。

今年主流のモニターサイズを調べても、来年発売のデバイスには対応できない。

max-widthとレスポンシブデザイン。


じゃあ、どうすれば良いのか?

レスポンシブデザインというのはその名の通り、デバイスサイズに「反応したデザイン」であり、決して「固定されたデザイン」ではない。

なので、固定される「ピクセル」ではなく、可変となる「パーセント」を使えば対応できる。

パソコンでの表示の際に、コンテンツを真ん中に置き、ある程度左右に余白を付けたい場合は、コンテンツのwidthの指定をパーセントにしたり、左右のmarginやpaddingをパーセントで設定すると良い。

Webのレイアウトを組む際は、固定のピクセル(px)ではなく、可変のパーセント(%)の方が多様なデバイスへの対応力がある。

vwでも良いかもしれないが、%の方が一般的にわかりやすい単位だろう。emやremだと文字サイズのイメージが強く、逆にわかりにくくなる。

レスポンシブデザインの対策例。
  • max-width: 1000px;などはなるべく使用しない。(デバイスやブラウザの幅に応じて可変しないので、表示崩れが起きる。)
  • widthや、左右のmargin、paddingをパーセントで指定する。(デバイスやブラウザの幅に応じて可変するので、表示崩れが起きない。)

例)

レスポンシブデザインのワイヤーフレーム例。

例)

レスポンシブデザインのワイヤーフレーム例。

以上、参考になれば幸いです。


Webデザインは実務数年、職業訓練校講師数年、フリーランス数年、計15年以上のキャリアがありますが、一気にがぁっと書いています。(元々はメモ書きでしたので順次見直し、更新しています。) 事実や経験、調査や検証を基にしていますが、万一なにかしら不備・不足などがありましたらすみません。お知らせいただければ訂正いたします。 写真や動画はフリー素材やパブリックドメイン、購入素材、もしくは自前のものを使用しております。

デザイナー、ディレクター、講師、コーチ / 井川宜久

お問い合わせ CONTACT..


    免責事項について

    • 事実や経験、調査や検証を基にしていますが、万一なにかしら不備・不足などがありましたらすみません。お知らせいただければ訂正いたします。
    • 一個人のポートフォリオサイトですので、万一損害・トラブル等が発生した場合でも、一切の責任を負いかねます。

    個人情報について

    • 個人情報はお客さま対応のみでの利用とさせていただいております。
    • 社会的に正当な理由、法に基づいた理由がない限り、第三者へ開示することはありません。