ページの幅をスマートフォンの画面幅に合わせる - Webサイトのスマートフォン対応

Webサイトをスマートフォン用に最適化して表示するために、Webページの幅をスマートフォンの画面幅にしたい場合があります。
Viewportの宣言をすることで、Webページの幅をスマートフォンの画面幅と合わせることができます。

書式

以下のタグをHEADタグ内に記述します。

<meta name="viewport" content="width=device-width, initial-scale=(初期状態のスケール値), maximum-scale=(最大スケール値), user-scalable=(拡大縮小ができるか)" />
<meta name="viewport" content="width=device-width, initial-scale=(初期状態のスケール値), maximum-scale=(最大スケール値), minimum-scale=(最大スケール値), user-scalable=(拡大縮小ができるか)" />
属性 値の範囲 意味
initial-scale 0.1から10まで 初期状態の拡大倍率の数値
maximum-scale 0.1から10まで 拡大可能な場合の最大倍率の数値
minimum-scale 0.1から10まで 拡大可能な場合の最小倍率の数値
user-scalable yes or no 拡大縮小操作が可能か


user-scalableには以下の値を指定できます。

意味
yes ズームイン、ズームアウトできる
no ズームイン、ズームアウトできない

記述例

  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes" />

コード例

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes" />
    <title>テストページ</title>
  </head>
  <body>
    <p>スマートフォン対応ページ</p>
  </body>
</html>

表示結果

以下のHTMLファイルを作成します。

viewport-none.html
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>テストページ</title>
</head>
<body>
  <h1>テストページ - ViewPort設定なし</h1>

  <p>文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言</p>
  <p>文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言</p>
  <h2>見出しです。</h2>
  <p>文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言</p>
</body>
</html>

上記のHTMLページをWebブラウザで表示します。下図のページが表示されます。
ページの幅をスマートフォンの画面幅に合わせる - Webサイトのスマートフォン対応:画像1

スマートフォンのシミュレーターで表示した場合が下図です。文字の表示がかなり小さいです。
ページの幅をスマートフォンの画面幅に合わせる - Webサイトのスマートフォン対応:画像2


続いて、以下のHTMLファイルを作成します。metaタグで viewportの設定を追加します。

viewport-device.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0, user-scalable=yes" />
  <title>テストページ</title>
</head>
<body>
  <h1>テストページ - ViewPort設定あり</h1>

  <p>文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言</p>
  <p>文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言</p>
  <h2>見出しです。</h2>
  <p>文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言文言</p>
</body>
</html>

上記のHTMLページをWebブラウザで表示します。下図のページが表示されます。 PCのWebブラウザの表示では、viewportの設定が無い場合と表示に違いはありません。
ページの幅をスマートフォンの画面幅に合わせる - Webサイトのスマートフォン対応:画像3

スマートフォンのシミュレーターで表示した場合が下図です。viewportの設定が無い場合より、文字のサイズが大きくなり、 スマートフォンで見やすい表示サイズでページが表示されます。
ページの幅をスマートフォンの画面幅に合わせる - Webサイトのスマートフォン対応:画像4

AuthorPortraitAlt
著者
iPentecのメインデザイナー
Webページ、Webクリエイティブのデザインを担当。PhotoshopやIllustratorの作業もする。 最近は生成AIの画像生成の沼に沈んでいる。
作成日: 2011-05-07
Copyright © 1995–2025 iPentec all rights reserverd.