
1. レスポンシブなサイトとは?
タイトルにもあるように、PCからみてもスマホからみても、文字や外観がくずれることがないWEBサイトのことです。もちろんタブレットでみる場合も含みます。
図1-1の左画像はPCから、右画像はスマホからみた自サイトの外観表示になります。
近年、スマホからサイトを閲覧する割合が、PCから閲覧する割合を上回るようになっており、サイトのレスポンシブ化は必須となっています。
PCからの閲覧しか考えてない古いサイトを見かけることも無くはないのですが、新規に作成されるサイトのほとんどは、レスポンシブ対応済になっています。
2. PCスタイルとスマホスタイル
PC用のスタイルとスマホ用のスタイルをスタイルシートに指定する場合、CSSメディアクエリ(@media)を使います。
メディアクエリの指定方法はいろいろとあり、タブレットサイズを考慮して細分化するケースもあるのですが、自サイトでは以下の2とおりの指定で、PC用とスマホ用の指定を分けています。
図2-1は、メデイァクエリのスタイルシート指定例です。
①@media (max-width: 768px) :最大幅768pxの場合、スマホ用スタイルを設定
②@media (min-width: 768px) :最小幅768pxの場合、PC用スタイルを設定
②@media (min-width: 768px) :最小幅768pxの場合、PC用スタイルを設定
1 |
図2-1 メディアクエリの指定例(layout.css)
3. ヘッダーのレスポンシブ対応
図3-1は、自サイトのヘッダ部品用のHTMLコードです。以下に示す機能があります。
①ヘッダー要素 :ヘッダー画像設定
②スマホ用ドロワーメニュー
③サイトロゴ表示 :サイトロゴはスタイルシートの指定によりPC用スマホ用どちらかを表示
④スマホ用サイト内検索窓 :Googleの「カスタム検索エンジン」よりコードを取得
⑤PC用ヘッダーメニュー
②スマホ用ドロワーメニュー
③サイトロゴ表示 :サイトロゴはスタイルシートの指定によりPC用スマホ用どちらかを表示
④スマホ用サイト内検索窓 :Googleの「カスタム検索エンジン」よりコードを取得
⑤PC用ヘッダーメニュー
1 |
図3-1 自サイトのヘッダ部品用HTMLコード(header.html)
図3-2は、ヘッダ(header)スタイル用のCSSコードの例です。CSSメディアクエリ(@media)により、スマホ用設定とPC用設定を分けています。
①@media (max-width: 768px) {} :スマホ用スタイルを設定
②@media (min-width: 768px){} :PC用スタイルを設定
②@media (min-width: 768px){} :PC用スタイルを設定
ポイントは、ヘッダ画像の高さ(height)切り替えと、サイトロゴはそれぞれの表示スタイルを持たせ、表示、非表示を切り分けている点となります。
また、スマホ用スタイルでのみ、サイト内検索窓(Googleカスタム検索)を表示するようにしています。
この他にも、スマホ用ドロワーメニューやPC用のヘッダーメニューのスタイル指定もあるのですが、長くなってしまいますので、別途の説明とさせていただきます。
1 |
図3-2 ヘッダ部品用のCSSコード(layout.css)
6. まとめ
今回の記事では、レスポンシブ対応について、自サイトのヘッダー部品を例として、ソースコードを混じえた説明をさせていただきました。閲覧する端末により、複数のスタイルを指定する必要があることがご理解いただけたと思います。
本記事の中で説明できなかったメニュー部分の実装につきましては、以下の記事をご覧ください。

静的サイトのヘッダーメニューをつくる【メニューバーの実装 ~ PC閲覧編】
PC閲覧用の静的サイトにヘッダーメニュー(メニューバー)を実装する方法について解説します、

静的サイトのヘッダーメニューをつくる【ハンバーガーメニューの実装 ~ スマホ閲覧編】
スマホ閲覧用の静的サイトにハンバーガーメニューを実装する方法について解説します。
また、自サイトカスタマイズの全体の概要については以下の記事をご覧ください。


古いウェブサイトを現代風デザインにカスタマイズ【HTML部品化とスマホ対応】
2000年代初頭に作成した昔風の静的サイトに対し、現代風の外観、機能となるようにカスタマイズした記録です。
おわり
コメント