上毛印刷株式会社

メディアクエリでスマホ対応

メディアクエリでスマホ対応

2022年12月28日
WEBサイト制作
  • #HTML
  • #css
  • #tips

こんにちは!
上毛印刷WEB制作担当のソーヤです。

今回は、みなさんお使いのスマートフォンにとって見やすいWEBサイトをコーディングする方法を書いていきます!

スマホサイトについて

皆さんは普段、どの端末からWEBサイトをご覧になりますか?
PCですか?タブレットですか?スマホですか?
現在(執筆時2022年)、日本のインターネットを利用するユーザーの約7割がスマホを使っています。
すごくないですか?
そんな高い割合なのかと思いつつも、
私自身、ネットで買い物するのも、動画を見るのも、ラジオを聞くのも、
全てスマホで済んでいます。

これはつまり、これから作るWEBサイトはスマートフォンに対応する必要があるということです!!

レスポンシブサイト

レスポンシブサイトとは、PC用のHTMLとスマホ用のHTMLが同一で、
CSSによって見た目がPC用とスマホ用に変化するWEBサイトのことです。

かつてはこんなような作りがスタンダードでした。

サーバー側で判別するか、クライアント側で判別するかの差はありますが、
このようにPC用のHTML、スマホ用のHTMLと分かれて表示をさせていたこともありました。

ですが、現在は、

このように一枚のHTMLでPC・スマホ両方に対応するサイト、つまりレスポンシブサイトが主流になっています。

メディアクエリ

では、具合的にどのようにコーディングすればレスポンシブサイトが作れるの?というと・・・
一番代表的なのではメディアクエリというものです。
こんなコードをCSSに記述します。

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

意味は、画面の幅768px以下の時に、このメディアクエリ内のCSSを適応するということです。
つまり、このメディアクエリ内に記述すると画面の幅によってCSSをかき分けられるので、
タブレットやスマホの画面のサイズ用にCSSを切り替えることができます。

ちなみに、CSSを切り替える特定のサイズ(この場合768px)、をブレイクポイントと言います。

メディアクエリの記述方法

では、具体的にどのように記述するのかを見ていきましょう!

まず、スマホサイトにしたいHTMLの<head>タグの中にビューポートの記述を入れましょう。

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

これでデバイスの画面の幅を検知して、正しくスマホ対応ができます。

では次にCSSです。

.block{
    width: 980px;
    height: 500px;
    margin: auto;
}

例えばこのように幅が980px、高さが500pxの要素が中央寄せになっています。
この要素をスマホ表示にする際、
現在の標準的なスマホのサイズ(375px)をはみ出してしまいます。

そこで、メディアクエリの登場です。
すぐ下にこのように記述しましょう。

.block{
    width: 980px;
    height: 500px;
    margin: auto;
}
@media screen and (max-width: 768px) {
    .block{
        width: 100%;
        height: auto;
    }
}

上記のようにすることで、
画面幅が768px以下になったとき、block要素の幅と高さが画面の大きさに対応するようになり、
スマホ画面をはみ出さなくなります。

PC用に書いたCSSを打ち消すイメージですね。

まとめ

これが基本的なレスポンシブサイトのコーディング方法になります。
地道に地道にPC用に記述したCSSをスマホ用にするために、
プロパティの値を書き換えていきます。

慣れるとPCより、スマホの方がコーディングが楽だと感じることもしばしばあるので、
ぜひ色々とレスポンシブサイトを作ってみてください!

WEB制作担当ソーヤ

ソーヤ

上毛印刷WEB制作担当
前職は東証プライム企業の本社WEB受託チームにてフロントエンドエンジニアを3年経験。


この記事に対するご意見・ご感想・ご質問等ありましたら、
ぜひ下記フォームにてお送りください。

    お名前必須
    メールアドレス必須
    お問い合わせ内容必須
    PAGE TOP