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

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

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

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

Sass

Sassは、プログラミング風のコードでCSSを生成できるスタイルシート言語です。 scss ファイルを、変換(コンパイル)してCSSファイルを作成します。

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

Q&A

4回答

2953閲覧

背景色を透明化したい

shumbow

総合スコア35

CSS3

CSS(Cascading Style Sheet)の第3版です。CSS3と略されることが多いです。色やデザインを柔軟に変更することが可能になります。

Sass

Sassは、プログラミング風のコードでCSSを生成できるスタイルシート言語です。 scss ファイルを、変換(コンパイル)してCSSファイルを作成します。

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

0グッド

0クリップ

投稿2019/05/12 15:32

bootstrap4で、ナブバーのハンバーガーメニューがクリックされた時、サイトの内容が見えるように、出てきたリンクのbackground-colorだけ透明化したいのですが、可能でしょうか。
ハンバーガーボタンを押した時

.show { .navbar-nav { background-color: rgba(226, 241, 252, 0); } }

このようにしたのですが変わってくれません。redなどを指定するとちゃんとredになってくれるのでセレクタはあってると思います。そもそも仕様でできないのでしょうか?

該当のhtml

html

1<div class="collapse navbar-collapse order-xs-2 order-md-1 show" id="navbarNav"> 2 <ul class="navbar-nav"> 3 <li class="nav-item mx-md-auto active"> 4 <a class="nav-link text-nowrap" href="/">TOP<span class="sr-only">(current)</span> </a> 5 </li> 6 <li class="nav-item mx-md-auto "> 7 <a class="nav-link text-nowrap" href="/help">お問い合わせ </a> 8 </li> 9 <li class="nav-item mx-md-auto "> 10 <a class="nav-link text-nowrap disabled" href="#">キャンペーン情報</a> 11 </li> 12 </ul> 13 </div>

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

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

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

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

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

guest

回答4

0

ul.navbar-nav の親要素のdivや、さらにその親要素などに背景色が指定されていませんか。ul.navbar-nav はちゃんと透明になっているものの、その下層にそもそも色がついているので、その色が透けて見えているのではないかと思います。

余談ですが、 background-color: transparent; のほうが、透明にしようとしているという意図がわかりやすくていいかと思います。

投稿2019/05/12 23:47

thyda.eiqau

総合スコア2982

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

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

shumbow

2019/05/13 12:37 編集

ありがとうございます!thydaさんのいう通り、親要素のnavの背景色が適用されてしまっている感じです!しかし解決できません。親要素navのbackground-colorをなくすと他の必要な要素の色まで消えてしまいます。また、nav以下の個々の要素に背景をセットして、.show>.navbar-navのみ透過する方法も試してみましたが、他の要素のあいだに空白ができてしまうのでこれもダメです。なので今、nav以下の要素をdivタグでリンク部分とそれ以外に分けてスタイルを当てようとしてますが、ダメっぽいです。ありがとうございました。また何かあればよろしくお願いします。
guest

0

application.js
$(function() {
$(".navbar-toggler").click(function() {
// cssで背景色を切り替え
$(".navbar").toggleClass("bg-click");
});
});

application.scss
.bg-click {
background-color: rgba(226, 241, 252, 0.8);
}

妥協しましたが、トグルボタンクリック時にナブバー全体の背景色を変更することで、落ち着きました。また重なっている要素で、子要素の裏にある部分だけ、親要素のbackground-colorを消す方法がわかった方がいましたら教えてください。

投稿2019/05/13 15:20

編集2019/05/13 15:25
shumbow

総合スコア35

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

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

yasutomi

2019/05/13 15:26

この質問の回答者のレベルであれば どこかに背景色が正しく表示されないWebページのサンプルを アップしてURLを教えていただければ解決可能です。
shumbow

2019/05/13 19:27

ごめんなさい、railsで書いているので,codepenのようなブラウザで動くものは使えない、herokuにデプロイしているのですが、なぜかうまくいかなかったのでできませんでした!
guest

0

SCSSではなくCSSで記述しています。
CSSなら正しくはこちらです。
(わかりやすいよう0.8を仮指定)

CSS

1.show .navbar-nav { 2 background-color: rgba(226, 241, 252, 0.8); 3}

https://codepen.io/anon/pen/JqRjVd

投稿2019/05/13 03:44

yasutomi

総合スコア2937

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

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

shumbow

2019/05/13 09:15

ご回答ありがとうございます。cssで書いても同じでした・・・。
yasutomi

2019/05/13 10:56

なるほど。 ちなみにこちらのリンク先の水色の背景色は見えますか。 (見えなければ質問者様の液晶画面に問題があります) https://codepen.io/anon/pen/JqRjVd
shumbow

2019/05/13 12:23

見えます!・・・
shumbow

2019/05/13 13:04 編集

原因がわかってきて、近い詳細度のスタイルによる上書きではなくて、.navbar-navの背景を透明にした時、親要素の背景色が死んでいないことによるので、たぶん詳細度の問題ではないです。ありがとうございます。
guest

0

透明度0%は完全に透明(ほぼ無)なので、100→80→60→30・・・のように少しずつ減らしていったほうが問題の切り分けがしやすくなりますよ。

投稿2019/05/13 00:54

m.ts10806

総合スコア80850

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

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

shumbow

2019/05/13 09:14

ありがとうございます。すべて0〜1まで段階的に試しても、だめでした。
m.ts10806

2019/05/13 09:16

回答最後に書いてますが直接的な解決策ではなく問題切り分けのやり方です。
shumbow

2019/05/13 12:16

問題を切り分けられませんでした・・・。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問