定義
ユーザーが閲覧している端末の画面サイズや解像度に合わせて、文字の大きさや画像、レイアウトが柔軟に自動調整されるWebサイト制作の手法です。PC、タブレット、スマートフォンなど画面の大きさが異なっても、たった1つのURL(Webサイトアドレス)で最適なレイアウトを表示できます。
なぜ端末ごとに異なる表示が必要なのでしょうか?
大きなパソコンのモニター向けに作られた新聞のようなレイアウトを、小さなスマートフォンで見るところを想像してみてください。文字がアリのように小さくなり、指で拡大したり、左右に何度もスクロールしたりしないと読めませんよね。逆にスマートフォンの画面を大型テレビに映すと、左右がぽっかり空いて不自然に見えます。
昔はこうした問題を解決するため、PC用サイトとモバイル用サイトを別々に作っていました。しかしこの方法では、記事を1つ直すだけでも両方のサイトを更新しなければならず、手間がかかります。そのうえ、タブレットのようにサイズが中間的な端末が登場するたびに、どちらを表示すべきか、あるいは専用サイトをもう1つ作るべきか悩むことになりました。
レスポンシブWebデザインは、この悩みをスマートに解決しました。端末ごとに別々のサイトを用意するのではなく、画面の幅に反応して自動的にレイアウトを組み替える仕組みを作ったのです。広い画面では横に3列並んでいた商品一覧が、スマートフォンでは縦1列にすっきりと並び替わります。
魔法のように変化する秘密、「メディアクエリ」
レスポンシブWebデザインの核となる秘密は、Webサイトの見た目を装飾する言語(CSS)に含まれる「メディアクエリ(Media Query)」という技術です。これはブラウザが画面の横幅をリアルタイムで測り、サイズに合わせた服に着替えるよう指示を出すセンサーのような役割を果たします。
例えば、「画面の幅が600ピクセルより狭くなったらメニューを隠し、3本線のハンバーガーアイコンを表示せよ」といったルールを書いておきます。すると、スマートフォンを横向きに回転させたり、ブラウザウィンドウの端をドラッグして縮めたりしたときに、設定した条件に合わせてリアルタイムにデザインが変身します。
さらに、ピクセル(px)のような固定された単位の代わりにパーセント(%)などを使う柔軟なグリッド構造が組み合わされます。画面の幅が狭くなると、テキストボックスや画像も比率に合わせてしなやかに縮むため、文字が画面からはみ出してしまうことがありません。
もう少し詳しく:アダプティブWebデザインとの違い
私たちがスマートフォンで見ているWebサイトのすべてがレスポンシブというわけではありません。よく「アダプティブWebデザイン」という手法と比較されます。アダプティブは、スマホサイズ、タブレットサイズ、PCサイズのように、あらかじめ決められたいくつかの固定サイズに合わせて別々にレイアウトを用意し、切り替えて表示する手法です。
一方、レスポンシブWebデザインは、画面サイズが1ピクセルずつ連続して変化しても、あらゆる画面サイズに滑らかに適応します。Webサイトのコードを1つだけ作れば済むため、内容を更新する際にかかる時間やコストを大幅に抑えられます。
また、URLが1つに統一されているため、検索エンジンのクローラーがページを巡回・管理しやすくなります。Googleも導入や管理のしやすさからレスポンシブ構成を推奨しています。このように管理がしやすくユーザー体験にも優れているため、現代のほとんどのWebサイトがレスポンシブを標準として採用しています。
よくある誤解
レスポンシブWebデザインは、モバイル用サイトを別にもう1つ作る技術である。
サイトを2つ制作するのではなく、たった1つのコードとURLで、あらゆる端末の画面サイズに合わせてデザインだけを柔軟に変化させる技術です。
日常で出会う場面
PCでブラウザウィンドウの端をつかんで横幅を縮めると、横一列に並んでいたナビゲーションメニューが3本線の「ハンバーガーボタン」の中にすっきり収まる動き。
タブレットを縦向きで見ているときは1列だったブログ記事の一覧が、端末を横向きに倒すと広くなった画面に合わせて2列に並び替わるレイアウト。
つまり ひとことで
画面のサイズに合わせてコンテンツの配置を自動調整し、どんな端末からでも快適に閲覧できるようにしたWebサイトの仕組みです。