0

私は次のjsfiddleセットアップを持っています:

http://jsfiddle.net/jMrsC/1/

フォルダ2>フォルダ2.1に移動すると、ページにドロップダウンメニューが表示されます。不透明度を注意深く見ると、第2レベルのサブメニューが開きます(違いを確認するには、適切なモニターが必要になる場合があります)。 2番目のサブメニューと最初のサブメニューには違いがあります。cssには、不透明度を適用する次のコードがあります。

.ddsmoothmenu ul li ul li{
  display: list-item;
  float: none;
  background: #111;
  opacity: 0.92;
}

私には、不透明度が2番目のサブメニューに2回適用され、最初のサブメニューよりもわずかに透明になっているように見えます。

誰か助けてください、私は第1レベルのサブメニューと第2レベルのサブメニューに同じ不透明度を持たせたいです。

ありがとう

- - - - - - - - - - - - アップデート - - - - - - - - - - -

申し訳ありませんが、以前ははっきりしていなかったと思います。削除するだけでなく、すべてのレベルのサブメニューに一貫した不透明度を適用したいと思います。

ありがとう

4

3 に答える 3

2

問題は、不透明度が要素の子にも適用されることです。したがって、サブメニューを作成するたびに、毎回親の不透明度が 0.92 になります。

シュピールが示唆したように、その行から不透明度を削除するだけでうまくいく場合があります。

ただし、第 2 レベルから始まるサブメニューを対象とし、それ以降は一貫性を保ちたい場合は、次のようにします。

熱意が示唆したように、現在のクラスから不透明度を削除します

初め:

.ddsmoothmenu ul li ul li{
display: list-item;
float: none;
background: #111;
#opacity: 0.92; <--remove
}

次に(これが上記のコードの後に​​あることを確認してください)

.ddsmoothmenu ul li {
opacity: 0.50
}

==== 編集 =====

これについてのエチケットが何であるかわからないので、編集するだけです。私が提案したことは機能しますが、以下の VenomVendor によって提供されるソリューションは、よりクリーンで優れています。.ddsmoothmenu>ul>li>ul>li以前に提案したようにする代わりに、代わりに使用し.ddsmoothmenu ul liてください。

于 2013-03-22T10:00:14.827 に答える
1

http://jsfiddle.net/jMrsC/5/で削除ul li ul liして、更新済みにul li更新します。

/*Sub level menu list items (alters style from Top level List Items)*/
.ddsmoothmenu ul li ul li{
 display: list-item;
 float: none;
 background: #111;
 }

.ddsmoothmenu ul li{
 opacity: .5;   /* value changed to see the difference */
 }
 .ddsmoothmenu ul li ul li{
  opacity: 1;  /* this means this class is not required, since default opacity is 1 */
 }
于 2013-03-22T10:15:05.257 に答える
0

そのクラスの不透明度を取り除くだけです

.ddsmoothmenu ul li ul li{
  display: list-item;
  float: none;
  background: #111;
  #opacity: 0.92;
}

あなたのフィドルでうまくいきました。

サブメニューは、その上のレベルの 0.92 不透明度を使用していると読み取っています。

于 2013-03-22T09:53:05.507 に答える