viewportの使い方

viewportは今までコピペで流用することがほとんどだったので、勉強としてviewportのcontentに設定できる値を調べてみました。

設定できる値

実際にはほかにもあるみたいですが、基本的にはcontentには以下の値を設定できるようです。

width viewportの幅をピクセル値で指定。
値は正の整数か’device-width’。
height viewportの高さをピクセル値で指定。
値は正の整数か’device-height’。
initial-scale デバイスの幅とviewportのサイズの比率を指定。
値は0.0~10.0の正の数値。
maximum-scale ズームの最大値を指定。
値は0.0~10.0の正の数値。
minimum-scale ズームの最小値を指定。
値は0.0~10.0の正の数値。
user-scalable 閲覧ユーザーにズームを許可するかどうかを指定。
値はyes(初期値)かno。

 

サンプルコード

実際にviewportを設定して試してみます。
幅に応じてMedia Queriesでテキストを出しわけるサンプルを作成しました。

HTML

<div class="breakPoint pc">980~</div>
<div class="breakPoint tb">640~979</div>
<div class="breakPoint sp">0~639</div>

CSS

.breakPoint {
	display: none;
}

@media screen and (min-width: 980px) {
	.pc {
		display: block;
		background: red;
	}
}/*-- min-width: 980px END --*/

@media screen and (min-width: 640px) and (max-width: 979px) {
	.tb {
		display: block;
		background: green;
	}
}/*-- min-width: 640px and max-width: 979px END --*/

@media screen and (min-width: 0px) and (max-width: 639px) {
	.sp {
		display: block;
		background: blue;
	}
}/*-- min-width: 0px and max-width: 639px END --*/

このサンプルのviewportの設定を変更して、挙動を確認しました。

viewport指定なしの場合。
viewport指定なしのデモページ
 

viewport width=768の場合。

<meta name="viewport" content="width=768" />

viewport width=768のデモページ
 

viewport width=device-widthの場合。

<meta name="viewport" content="width=device-width" />

viewport width=device-widthのデモページ
 

viewport initial-scale=1.0の場合。

<meta name="viewport" content="initial-scale=1.0" />

viewport initial-scale=1.0のデモページ
 

viewport initial-scale=2.0の場合。

<meta name="viewport" content="initial-scale=2.0" />

viewport initial-scale=2.0のデモページ
 

viewport width=device-width, initial-scale=1.0の場合。

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

viewport width=device-width, initial-scale=1.0のデモページ
 

viewport user-scalable=noの場合。

<meta name="viewport" content="user-scalable=no" />

viewport user-scalable=noのデモページ
 

viewport maximum-scale=1.2の場合。

<meta name="viewport" content="maximum-scale=1.2" />

viewport maximum-scale=1.2のデモページ
 

viewport minimum-scale=0.9の場合。

<meta name="viewport" content="minimum-scale=0.9" />

viewport minimum-scale=0.9のデモページ
 

ちなみに、Googleのモバイルフレンドリーでは以下のようになっています。

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

固定幅で表示させたい場合

<meta name="viewport" content="width=768" />

可変幅の場合

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

という使い分けでよいと思います。
 

【参考サイト】

 

このエントリーをはてなブックマークに追加

関連記事

コメントを残す

メールアドレスが公開されることはありません。
* が付いている欄は必須項目です

CAPTCHA


コメントが承認されるまで時間がかかります。

2024年11月
 12
3456789
10111213141516
17181920212223
24252627282930