HTML学習 第6回:スマホ対応(レスポンシブデザイン)入門

このページでは、スマホでも読みやすいページにするための viewportmediaクエリ の基本を学びます。

パソコンとスマホでレイアウトを少し変えて、「レスポンシブデザイン」を体験してみましょう。

1. なぜスマホ対応が必要なのか

今では、多くのユーザーがスマホからWebサイトを見ています。パソコン用だけを想定してページを作ると、次のような問題が起きます。

そこで、画面の幅にあわせてレイアウトを変えるレスポンシブデザインという考え方が使われます。

2. viewport の設定

スマホでの表示は、まず <meta name="viewport"> の設定から始まります。

このページの <head> には、次の1行が入っています。

<meta name="viewport" content="width=device-width, initial-scale=1.0">

この指定によって、「画面の幅にあわせてページを表示する」「最初の拡大率を1にする」といった動きになります。

PCとスマホでの見え方の違い

このサンプルでは、PCでは左側に本文、右側にポイントまとめが並びます。

スマホの幅まで縮めると、2つのカラムが縦に並ぶ1カラムレイアウトに変化します。

3. mediaクエリでスタイルを切り替える

画面の幅によってCSSを切り替えるには、@media(メディアクエリ)を使います。

このページの最後には、次のようなCSSが書かれています。

@media (max-width: 768px) { ... }

この中にあるスタイルは、「画面の幅が768px以下のときだけ」適用されます。

このページでやっていること

ブラウザの横幅を変えながら、「どのタイミングでレイアウトが変わるか」を確認してみましょう。

3. mediaクエリでスタイルを切り替える

画面幅によって見た目が変わる例

下のボックスは、画面の幅によって色や文字サイズが変わるようにしてあります。

このボックスは @media (max-width: 768px) の中の指定で、 幅が狭いときだけ色や文字サイズが変わります。
ブラウザの横幅を広げたり狭めたりして、変化を確認してみてください。