Masassiah Blog

現役サラリーマンのスキルアップのための読書まとめ

レスポンシブ ウェブ デザイン

2021年8月30日作成

Google 検索セントラル「レスポンシブ ウェブ デザイン」によると,レスポンシブ ウェブ デザインを次のように説明している。

レスポンシブ ウェブ デザインは、サーバーからどのデバイスに対しても常に同じ HTML コードを配信しつつ、CSS を使用して各デバイスでのページのレンダリングを変更する設定方法です。

developers.google.comまた Google は,レスポンシブ ウェブ デザインをモバイル対応のベストプラクティスとして推奨していることもあり,レスポンシブ ウェブ デザインに対応する例が増えている。

もちろん,Masassiah Web Site,Masassiah Blog もレスポンシブ ウェブ デザインを採用している。

レスポンシブ ウェブ デザインの特徴

レスポンシブ ウェブデザインの利点は,以下の通り。

  • URL が一つなので,ユーザによるコンテンツの共有やリンクが簡単になる。
  • 同じコンテンツのページをいくつも維持管理する手間が省ける。
  • ユーザをリダイレクトする必要がないので読み込み遅延が少ない。

レスポンシブ ウェブ デザインは,いいことばかりのようだが,実際どうだろうか。

レスポンシブ ウェブ デザイン(案1)と Web サイトにアクセスする Web ブラウザやデバイスのユーザエージェント情報によって,表示を切り替える方法(案2)を比較する。

表 レスポンシブ ウェブ デザインの比較
項目 案1 案2
Web サイト表示の切替え方法 様々なデバイスに対して単一の HTML ファイルを使用する。Web ブラウザのウィンドウ幅を基準に,CSS で表示を切り替える。 バイスごとに最適化した複数の HTML ファイルを準備しておく。Web サーバへのアクセス時に通知されるユーザエージェント情報(Web ブラウザの種類やバージョンの情報)に応じて,適切な HTML ファイルにリダイレクトを行うことで表示を切り替える。
表示速度 リダイレクトを行わないので,表示の遅延は発生しない。ただし,PC の高解像度ディスプレイ用の画像をスマートフォンでも共通して使用する場合は,表示の遅延が発生する。 案1と比較した場合,リダイレクトを行う分,表示の遅延が発生する。
デザインの自由度 どのデバイスでも同じ HTML ファイルを表示するので,基本的なデザインは共通となる。そのため,デバイスごとに大幅にデザインを変更することは難しい。 バイスごとに異なる HTML ファイルを表示するので,デバイスごとに自由にデザインすることが可能である。

私が運営する Web サイトでは,デバイスごとに大きくデザインを変更する必要がなく,初期開発や将来のデザイン変更において,開発コストを抑えられるため,案1のレスポンシブ ウェブ デザインを採用している。

レスポンシブ ウェブ デザインの実現方法

レスポンシブ ウェブ デザインを実現するため,デバイスの解像度,ウィンドウの幅・向きなどの指定条件に合わせて別々の CSS を適用する「メディアクリエ」の機能によって CSS を切り替える。Web ブラウザのウィンドウ幅で CSS を切り替える条件を「ブレークポイント」という。ブレークポイントピクセルで指定し,単位は px で表す。

スマートフォンタブレットブレークポイントを 768 px,タブレットと PC のブレークポイントを 1,024 px とし,次表のように対象デバイスごとの Web ブラウザで想定されるウィンドウ幅の範囲を決める。

対象デバイス ウィンドウ幅の範囲
スマートフォン 320 ~ 767 px
タブレット 768 ~ 1,023 px
PC 1,024 px