CSSで要素幅を画面いっぱいに はみ出させて表示させる

「幅いっぱい」は普通は親要素に対してです。

でも画面幅いっぱいに表示させたい場面が...

その方法がようやく分かったので、
CSSで要素幅を画面幅いっぱいにする方法を紹介!

まずは画面幅いっぱいに表示させる要素の例から

ここでは次のようなHTML・CSSを考えてみます。

▼ HTMLはこのような感じ

▼ 各要素に対して指定したCSS

▼ このような見た目になった

親要素に対して幅いっぱいの要素。これをブラウザ画面幅いっぱいになるように調整したい

こういう構成ってよく見かけますよね。Body要素の中にコンテナ要素があり、その中にいろいろコンテンツが入ってくるという感じです。

ただ上の「画面幅いっぱいのタイトル」という要素。本当は .container  という親要素ではなく、画面に対して幅いっぱいに表示したかったです。(もちろんレスポンシブで)

意外とその方法は簡単でした。

画面幅いっぱいにはみ出させて表示させてみた

そのやり方は次の通り

▼ 先ほどのHTMLを少しだけ改変

このように画面幅いっぱいにはみ出させたい要素に class="full_width"  というクラスをつけました。別になんでもいいけど、このクラス名にしておきます。

▼ 次のようなCSSを適用

まず左右マージンに対して calc(50% - 50vw)  を指定。これは「要素幅の半分から画面幅の半分をひく」という意味。ちなみに vw という単位はビューポート(ブラウザ)の割合に基づく単位です。

そしてあとは width: 100vw;  で画面幅いっぱいに表示。マイナスのマージン指定で親要素の範囲外にはみ出させ、それに合わせて要素幅を広げている感じですね。(マイナスマージンは自分自身も理解が足りてないかも...)

そして実際の見た目はこのようになりました。

▼ 見事に画面幅いっぱいになってくれた!

親要素からはみ出させてブラウザ画面幅いっぱいに表示させてみた

ランディングページ(LP)とかでよく見るアレ。

もちろんタイトル以外にも画像を画面幅いっぱいに広げたりするのにも使えます。もちろんブラウザ幅が変わっても画面幅100%表示になるので完全レスポンシブ

画面幅いっぱいは色んな場面で役に立ちそう

要素を画面幅いっぱいに広げる・・・これはスマホ・PCの画面幅に関わらず、どんな端末でも幅いっぱいに広げることができます。

レスポンシブの複雑さを少し減らせるうえ、デザイン的にもアクセントになるので色んな場面で役に立ちそうですね。(もちろん乱用のし過ぎはダメ)

以上、CSSで画面幅いっぱいに合わせるテクでした。

もし問題点があればコメント欄からどうぞ。ではまた

CSS

Shareこの記事をシェアしよう!

Commentsこの記事についたコメント

コメントを残す

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

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください