レスポンシブなサイト作成のためには避けて通れないCSSの「単位」
こんにちは、プロダクト開発チーム エンジニアの森永です。
Webサイト作成やWebサービス設計、Webアプリ開発で、最近「レスポンシブデザイン」を考慮に入れる必要性は高まってきております。
レスポンシブデザインを意識した設計、開発を行う際にはCSSの適切な設計が必須となってきますが、重要となってくるのが長さ、大きさの「単位」です。普段使う「px」「%」といったもの以外に、CSS3では新たな単位も使えるようになってきました。
今回のブログでは、CSSで使う単位について考察していきます。
基本的な単位
まず、基本的な単位を3つ紹介します。
px
ピクセル単位。基本中の基本です。いろいろな単位が増えてきてはいるものの、この単位を一切使わずにCSSのコーディングを行うということは不可能と言ってもいいくらい基本的な単位です。
%
この単位もよく使われると思います。親要素に対する長さの割合をパーセンテージで示します。
em
これも定番です。親要素のフォントサイズを1とした単位なのでフォントサイズ次第で長さは変化しますが、「1行空ける」「1文字分開ける」といった用途で使う方も多いかと思います。
CSS3で追加され利用頻度の高い単位
ここからはCSS3で追加された単位です。その中でまずは使用機会が増えてきている2つを紹介します。
vw
ビューポート(表示領域)の幅の1/100を1とした単位です。
従いまして、画面の大きさが変化しても幅の1/100が基準となるので、レスポンシブデザインに適した単位と言えます。
vh
vwと同様に、ビューポート(表示領域)の高さの1/100を1とした単位です。
よく使うケースとしては、画面の高さいっぱいの領域を指定する際に「height: 100vh」と指定することなどが挙げられます。
※注意事項
この場合の「表示領域」には、スクロールバーも含みます。
その点を考慮せずにコーディングを行うと画面が崩れる場合がありますのでご注意下さい。
注目度が上がっている単位
続いて、最近注目度が上がっている単位を3つ紹介します。
rem
ルート要素(通常のhtmlファイルであればタグ)で指定したフォントサイズを1とした単位です。
この単位を使うことにより、他の要素でpxやemなどを使っていても影響されない設定が可能となります。
vmin
ビューポート(表示領域)の幅か高さのうち小さい方の1/100を1とした単位です。
vmax
ビューポート(表示領域)の幅か高さのうち大きい方の1/100を1とした単位です。
vmin/vmaxを使うことにより、モバイル端末など画面の縦横を切り替える場合がある場合には便利になるケースが考えられます。
※注意事項
便利そうに見えますが、一部ブラウザでは使用不可なので注意が必要です。特にIE/Edgeはvmax非対応です。
サンプル
ここまで紹介した単位を実際にCSSで使用したサンプルをCodePenに掲載いたしました。
特にvw,vh,vmin,vmaxについては画面サイズに応じて変化することが確認できるかと思います。
まとめ
単位を適切に使うことにより、レスポンシブデザインに適したコーディングを行うことができます。
テクニックの解説記事がcollissなどの情報サイトに多数掲載されておりますのでそちらも参照すると良いでしょう。
うまく単位を操り、レスポンシブデザインに役立てていきましょう!
-
お問い合わせ
SiTest の導入検討や
他社ツールとの違い・比較について
弊社のプロフェッショナルが
喜んでサポートいたします。 -
コンサルティング
ヒートマップの活用、ABテストの実施や
フォームの改善でお困りの方は、
弊社のプロフェッショナルが
コンサルティングいたします。
今すぐお気軽にご相談ください。
今すぐお気軽に
ご相談ください。
(平日 10:00~19:00)
今すぐお気軽に
ご相談ください。
0120-315-465
(平日 10:00~19:00)
グラッドキューブは
「ISMS認証」を取得しています。
認証範囲:
インターネットマーケティング支援事業、インターネットASPサービスの提供、コンテンツメディア事業
「ISMS認証」とは、財団法人・日本情報処理開発協会が定めた企業の情報情報セキュリティマネジメントシステムの評価制度です。