【びゅーぽーと】

ビューポート とは?

💡 ウェブページが映し出される「表示窓」
📌 このページのポイント
ビューポート(表示領域)の概念 Webページ全体 ビューポート (見えている領域) ↕ スクロール (隠れている部分) デバイス別 PC: 1920px タブ: 768px SP: 375px 横幅が変わる → レスポンシブ対応 meta viewport width= device-width initial-scale=1
ビューポートのイメージ
ひよこ ひよこ

ビューポートって何?

ペンギン先生 ペンギン先生

ブラウザでウェブページが表示される領域のことだよ。PCなら画面全体の幅、スマホなら端末の画面幅がビューポートになる。このサイズに応じてページの見え方が変わるんだ。

ひよこ ひよこ

meta viewportタグって何のためにあるの?

ペンギン先生 ペンギン先生

スマホのブラウザデフォルトで「PCサイトを縮小して表示する」動作をするんだ。meta viewportタグで「width=device-width」と指定すると「デバイスの画面幅に合わせて表示してね」と伝えられる。これがないとスマホでもPC向けの幅でページが表示されて、文字がすごく小さくなるよ。

ひよこ ひよこ

initial-scaleって何?

ペンギン先生 ペンギン先生

ページを最初に開いたときの拡大率だよ。「initial-scale=1.0」なら等倍、つまり拡大も縮小もしない状態で表示される。ほとんどの場合をそのまま書けばOKだよ。

ひよこ ひよこ

ビューポートって他にも種類があるの?

ペンギン先生 ペンギン先生

実はCSSにはビューポートに関する単位がいくつかあって、ここが混乱しやすいんだ。vw・vhは画面幅・高さの1%を表す単位で便利なんだけど、スマホの「100vh問題」がある。スマホブラウザはアドレスバースクロールで隠れたり出たりするから、100vhの高さが変動してガタつく。これを解決するためにCSS仕様にsvh(小さいビューポート高)、lvh(大きいビューポート高)、dvh(動的ビューポート高)が追加されたんだけど、どれを使うべきかはケースバイケースで、フルスクリーンUIを作るときに地味にハマるポイントなんだよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「ビューポート」って出てきたら「ブラウザでページが表示される領域のことだな」と思えればだいたいOK!
📖 おまけ:英語の意味
「Viewport」 = 表示領域
💬 View(見る)+ Port(窓・入口)。ウェブページを見るための「窓」という意味だよ
← 用語集にもどる