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

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

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

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

CSS

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

Q&A

解決済

1回答

669閲覧

限られたHTMLで背景を追加する方法はありますか?

takawork

総合スコア95

HTML

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

CSS

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

0グッド

0クリップ

投稿2020/11/05 19:01

編集2020/11/06 07:18

イメージ説明
上記のように赤枠の両サイドの外側にピンク色の背景を付けたいと思っています。

<div class="cover"> <div class="filter"> <p>test</p> </div> </div>
.cover { background: pink; } .filter { max-width: 1140px; margin: 0 auto; border: 2px solid red !important; } .filter p { text-align: center; }

上記のようにfilterクラスの親要素であるcoverクラスの背景色を付ければ可能なのですが、実際のサイトでは<div class="cover"></div>が付けれれません。
実際のサイトではreactiveproというプラグインで絞り込み検索を入れており、それが上記のコードのfilter部分にあたります。
なので実際のサイトでは、以下のような構造になっております。

<div class="filter"> <p>test</p> </div>

このようなhtmlのみで冒頭のような背景色を導入するにはどうすれば良いでしょうか?

.filter { background: pink; max-width: 1140px; margin: 0 auto; border: 2px solid red !important; } .filter p { text-align: center; }

上記のようなcssだと赤枠内のみに背景色がついてしまいます。
イメージ説明
また実際のサイトでは、ページ全体に別の背景色を使っているので、サイト全体をピンクで染めるという方法は出来ません。
長くなってしまいましたが、まとめると、

<div class="filter"> <p>test</p> </div>

この状態のhtmlでどんなcssを使うと以下の画像の緑枠内をピンクにすることが出来ますかという質問です。
イメージ説明

よろしくお願いします。

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

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

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

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

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

m.ts10806

2020/11/05 22:38

HTMLだけではなにも再現できません。
m.ts10806

2020/11/05 22:38

タグもHTML,CSSだけで理解される内容ではないかと。 プラグイン云々は何の話ですか?
Lhankor_Mhy

2020/11/06 01:22

「部分的に緑の背景を追加したい」とのことですが、具体的にはどの部分ですか?
takawork

2020/11/06 07:17

伝わりやすいように質問を書き換えたのでよろしくお願いします。
Lhankor_Mhy

2020/11/06 07:55

「緑枠内」とは、ご提示のコードで言うとどの要素に当たりますか?
takawork

2020/11/06 07:59

HTMLで緑枠内の要素がないので困ってるという質問です。 赤枠の要素のみの状態で、緑枠(つまり赤枠の外側サイドも含めた範囲)をどうやって背景を足せば良いのか分からないという質問です。 伝わりにくくてすみません。
Lhankor_Mhy

2020/11/06 10:12

どこまで背景を足すのか、についてどういう基準で判断するのですか? 10px分伸ばす、とかそういうことですか?
takawork

2020/11/06 12:23

イメージとしては、横に広いモニターで見てもぶつ切りにならないように、高さは赤枠の高さと同じで、それが左右に無限に伸びていくイメージです。
Lhankor_Mhy

2020/11/07 05:55

幅がスクリーンサイズ、高さは変更なし、ということですね。 普通に考えると、.filterの幅を変更してしまうのが手っ取り早いように思えますが、ボーダーは現状を維持したい、ということなのでしょうか?
guest

回答1

0

ベストアンサー

こんにちは。

この質問の回答が参考になると思います。
HTML - calc()関数がわからない|teratail

サンプル

css

1 2.filter { 3/* ... */ 4 position:relative; 5} 6 7.filter::before { 8 content: ""; 9 background: pink; 10 position: absolute; 11 width: 100vw; 12 height: 100%; 13 border: solid 2px transparent; 14 z-index: -1; 15 left: calc( 50% - 50vw ); 16 top: -2px; 17}

投稿2020/11/07 07:38

Lhankor_Mhy

総合スコア36960

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

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

takawork

2020/11/07 10:08

ありがとうございます。上手くいきました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問