• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:プルダウンメニューのcurrentの使い方)

プルダウンメニューのcurrentの使い方

このQ&Aのポイント
  • CSSで制作した横型プルダウンメニューで、「current」を使って現在のページのボタンの色を変えたいが、子メニューの色まで変わってしまう問題に直面しています。
  • 親メニューのボタンだけを変えて、子メニューの色は変えない方法があるのかを知りたいです。
  • currentで表示する色と子メニューのロールオーバー時の色は同じです。

質問者が選んだベストアンサー

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

とりあえず、子供セレクタを理解しない古いブラウザ対応。 子供セレクタ対応のモダンブラウザなら、直接指定すると簡単です。 要は、詳細度をきちんと計算すること--常識的な結果ですが--- ★リキッドデザインでデザインしてあります。 ★タブは_に置換してある。 <div class="nav"> _<ul> __<li><a href="./">トップ</a></li> __<li class="current"><a href="./product">製品</a> ___<ul> ____<li><a href="./product/a">A群</a></li> ____<li><a href="./product/b">B群</a></li> ____<li><a href="./product/c">C群</a></li> ___</ul> __</li> __<li><a href="./service">サービス</a> ___<ul> ____<li class="current"><a href="./service/a">A群</a></li> ____<li><a href="./service/b">B群</a></li> ____<li><a href="./service/c">C群</a></li> ___</ul> __</li> __<li><a href="./profile">会社</a></li> __<li><a href="./mail">メール</a></li> _</ul> </div> div.nav{width:80%;height:34px;margin:0 auto;text-align:center;line-height:30px;} div.nav ul,div.nav ul li{display:block;list-style:none;margin:0;padding:0;} div.nav ul li{float:left;width:19%;} div.nav ul li ul li{float:none;width:100%;} div.nav ul li a{ display:block;width:100%;height:100%; text-decoration:none; background-color:yellow; border:outset 2px silver;outline:none; } /* 詳細度 0014 */ div.nav ul li a:hover{background-color:rgb(255,255,200);}/* 詳細度 0024 */ div.nav ul li.current a{background-color:red;} /* 詳細度 0024 */ div.nav ul li.current a:hover{background-color:rgb(255,200,200);} /* 詳細度 0034 */ div.nav ul li.current ul li a{background-color:yellow;} /* 詳細度 0026 */ div.nav ul li.current ul li a:hover{background-color:rgb(255,255,200);}/* 詳細度 0036 */ div.nav ul li ul{display:none;} div.nav ul li a:active{border-style:inset;} div.nav ul li:hover ul{display:block;}

space283
質問者

お礼

お忙しい中ありがとうございました! こんなに詳細にご説明くださり恐縮です・・・(涙)。 見よう見まねでCSSを追加してみました所、思い通りの結果となりました。 まだまだ内容を理解できていない部分もあり、自分のものにできていないので、後日しっかり内容を確認して勉強させていただきます! 初めてプルダウンに挑戦して、このプルダウンが最後の問題だったので、本当に助かりました(涙)大変勉強になりました。ありがとうございました!

その他の回答 (1)

  • sagamit
  • ベストアンサー率37% (39/105)
回答No.1

こんな要領でいかがでしょう。 .current { background-color: red; } .current > ul { background-color: blue; } .current > ul > li:hover { background-color: red; }

space283
質問者

お礼

お忙しい中ありがとうございました! まだまだ勉強不足ですぐには応用して活用できずにおりますが(汗)こういう方法もあるのですね。 次回、CSS組みなおしてやってみます! 大変勉強になりました!ありがとうございました☆

関連するQ&A

専門家に質問してみよう