レスポンシブwebデザイン

レスポンシブwebデザインを学ぼう

 

レスポンシブ対応する方法

Webサイトをレスポンシブ化するためには以下の工程が必要です。

表示領域の設定をする
画面サイズによってCSSを切り替えるための設定をする
画面サイズごとに適用するCSSを記述する

 

表示領域を設定する方法

レスポンシブ対応をするためには、画面幅が異なるデバイスに対してWebサイトの表示領域の設定をする必要があります。

この表示領域をviewportと呼びます。

viewportの指定をしないと、スマートフォンで表示した時に、PCサイトのレイアウトをそのままスマートフォンの画面内に収まるように縮小して表示されるので、文字が小さくなり非常に見づらくなってしまいます。

viewportを設定するためには、htmlファイルのheadタグ内に以下の記述を追加します。

<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>TECH CAMP DEMO</title>
<link rel="stylesheet" href="./css/reset.css" />
<link rel="stylesheet" href="./css/style.css" />
</head>

contentプロパティにwidth="device-width"を指定することで、ブラウザの大きさをPCやスマートフォンなどの機器の大きさに合わせることができます。
initial-scaleは、画面の拡大率を指しています。拡大率は「1.0」に設定しているため、拡大は行われません。


これで表示領域の設定が完了しました。

 

次に、画面サイズによってCSSを切り替える方法を学びましょう。

先に例を出したほうがわかりやすいので、以下を見てください。

例えば、「画面幅が500px以下の時にのみ、pタグのfont-sizeを10pxにしたい」という場合は以下のように記述します。

@media (max-width: 500px) {
p {
font-size: 10px
}
}

見慣れない記述ですが、「max-width: 500px」の部分は「画面幅が最大500pxのとき」という意味になるので、すなわち「画面幅が500px以下のとき」という意味になります。

max-widthに対してmin-widthも存在します。その場合は「画面幅が最低500pxのとき」という意味になるので、すなわち「画面幅が500px以上のとき」という意味になります。

 

最後に画面サイズごとにcssを適用する方法を学びます

メディアクエリを書いたら、実際にCSSをその中に書いていきます。

例えば、以下はPC表示時はpタグのフォントサイズを30px、タブレット時は25px、スマホ時は20pxにするという記述です。

/* PC表示時 */
p {
font-size: 30px
}

/* タブレット表示時 */
@media (max-width: 1000px) {
p {
font-size: 25px
}
}

/* スマホ表示時 */
@media (max-width: 500px) {
p {
font-size: 20px
}
}

他にもPC表示時は横並びのレイアウトをスマホ時には縦並びにしたり、marginの値を小さくしたりすることがあります