teratail header banner
teratail header banner
質問するログイン新規登録

質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.30%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

392閲覧

cssで画面いっぱいに背景画像を表示させたい

sususuzu

総合スコア8

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2024/03/25 06:09

編集2024/03/25 13:14

0

0

実現したいこと

  • cssで背景画像を画面いっぱいに表示したい

前提

htmlとcssでサイト制作をしています

<section>内にbackground-imageで背景画像を表示させましたが、 全てのセクションにmargin: 0 autoがきいているため画像がmargin分表示されません

画面幅いっぱいに背景画像を表示させたいのですが
works_contentのwidthを100%に指定しても、1240pxの指定があるため、そこまでしかのびません。
背景画像は、それから左右にはみ出させて画面いっぱいにしたいです

発生している問題・エラーメッセージ

<section class="all_section top_works"> <h3>works</h3> <div class="works_content"> <div class="works_content-img"> <a href=""></a> <a href=""></a> <a href=""></a> </div> </div> </section> ### css .all_section{ width: 90%; max-width: 1240px; margin: 0 auto; position: relative; } .top_works{ height: 600px; background-image: url(../images/bg.png); background-repeat: no-repeat; background-size: cover; } ```ここに言語名を入力 ソースコード

試したこと

補足情報(FW/ツールのバージョンなど)

all_sectionはほかのセクションでもすべてに使用していて、前任の方の書いたコードなのでできれば触らない方向で進みたいです

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Lhankor_Mhy

2024/03/25 07:10 編集

『背景画像を画面いっぱいに』とのことですが、一方で height: 600px とあるようです。 そこで、補足願います。 1. 画面高さが600pxを超えている場合、背景画像は画面高さに合わせて要素からはみだすのですか? また、スクロールしたときには追従しますか? 2. 画面高さが600pxより小さい場合、背景画像は画面高さに合わせて要素より小さくするのですか? また、スクロールしたときには追従しますか?
hatena19

2024/03/25 08:13

「画面いっぱい」というのは画面幅のことでしょうか。 高さは600pxで指定してあるので、600px固定。 幅は width: 90%; max-width: 1240px; と指定してあるが、背景画像は、それから左右にはみ出させて画面いっぱいにしたいということでしょうか。
sususuzu

2024/03/25 12:24

Lhankor_Mhy様 1. 画面高さが600pxを超えている場合、背景画像は切れてしまいます。スクロールしたときには追従しません 2. 画面高さが600pxより小さい場合の確認方法がなく、不明です。 hatena19様 「画面いっぱい」というのは画面幅のことです。 works_contentのwidthを100%に指定しても、1240pxの指定があるため、そこまでしかのびません。 背景画像は、それから左右にはみ出させて画面いっぱいにしたい、という認識で合っています。 sectionから背景画像だけを出して記述するほかないでしょうか…
hatena19

2024/03/25 13:02

> 「画面いっぱい」というのは画面幅のことです。 > works_contentのwidthを100%に指定しても、1240pxの指定があるため、そこまでしかのびません。 > 背景画像は、それから左右にはみ出させて画面いっぱいにしたい、という認識で合っています。 これを質問に追記してください。 質問は後からでも編集できます。
Lhankor_Mhy

2024/03/26 00:04

現状をお伺いしてるのではなくて、期待している状態をお聞きしています。
sususuzu

2024/03/27 07:13

コメントの意図を理解しておらず、大変失礼いたしました。今回別の方のアンサーにより解決いたしましたので、こちら解決済みにさせていただきました。コメントしていただき、ありがとうございました。
guest

回答2

0

ベストアンサー

.top_worksの親要素を1個設け、それにwidth: 100%;を指定しておけば良いのでは?

投稿2024/03/25 22:36

Refrain

総合スコア682

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sususuzu

2024/03/26 13:39

回答ありがとうございます。 親要素を設けてみると、解決しました! ベストアンサーに選ばせていただきました。 本当にありがとうございます。
Refrain

2024/03/26 13:44

滅茶苦茶雑な文章になってすみませんでした… 寝起きだったもので…
sususuzu

2024/03/28 06:35

とんでもないです。 とても助かりました。 ありがとうございました!
guest

0

質問へのコメントより

「画面いっぱい」というのは画面幅のことです。
works_contentのwidthを100%に指定しても、1240pxの指定があるため、そこまでしかのびません。
背景画像は、それから左右にはみ出させて画面いっぱいにしたい、という認識で合っています。

要素のbackground-imageは要素からはみ出させることはできないので、疑似要素にbackground-imageを設定する方法になると思います。

CSS

1body { 2 position: relative; 3} 4.all_section { 5 width: 90%; 6 max-width: 1240px; 7 margin: 0 auto; 8} 9.top_works { 10 height: 600px; 11} 12.top_works::before { 13 content: ""; 14 display: block; 15 position: absolute; 16 left: 0; 17 width: 100%; 18 height: 600px; 19 background-image: url(https://picsum.photos/1200/800); 20 background-repeat: no-repeat; 21 background-size: cover; 22 z-index: -1; 23}

投稿2024/03/25 13:06

編集2024/03/25 13:18
hatena19

総合スコア34367

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sususuzu

2024/03/27 07:10

回答ありがとうございます。 ベストアンサーは別の方を選ばせていただきましたが、 また別のセクションなどでこのような記述が必要になった際、参考にさせていただきます。 ありがとうございました。
hatena19

2024/03/27 09:22

HTMLの変更は不可と勘違いしてました。 HTMLを変更してもいいのなら、ベストアンサーの回答がベストでしょう。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問