2011-02-08 10 views
0

こんにちは、新しいタイプのnavドロップダウンを作成したいと思っています。新しいCSSドロップダウンメニュー/メガメニュー

基本的にナビアイテムにカーソルを合わせると、ナビゲーションの下にドロップダウンボックスが表示されます。通常のドロップダウンとの違いは、このドロップダウンには、ナビのサブアイテム(ホバーされたアイテムに属するアイテムだけでなく)がすべて含まれていることです。したがって、私のコード例では、Nav 1にカーソルを合わせると、すべてのアイテムa-iが表示されます。

<ul> 
      <li><a href="#">Nav 1</a> 
       <ul> 
        <li><a href="#">item a</a></li> 
        <li><a href="#">item b</a></li> 
        <li><a href="#">item c</a></li> 
       </ul> 
      </li> 
      <li><a href="#">Nav 2</a> 
       <ul> 
        <li><a href="#">item d</a></li> 
        <li><a href="#">item e</a></li> 
        <li><a href="#">item f</a></li> 
       </ul> 
      </li> 
      <li><a href="#">Nav 3</a> 
       <ul> 
        <li><a href="#">item g</a></li> 
        <li><a href="#">item h</a></li> 
        <li><a href="#">item i</a></li> 
       </ul>     
      </li> 
     </ul> 

:ドロップダウンがNAVと同じ幅である必要があり、各ナビゲーション項目のリンクがその下に表示されます。 I've attached a sketch!

UL内にドロップダウンを含むdivを配置し、それをul.hoverに表示させることを考えましたが、それは検証されず、どのliがホバリングされたのかをターゲットにすることができません。

誰かがそれが偉大だと私に知らせることができれば、ちょうどcssを使ってこれを達成することは不可能かもしれません。

残念ですが残念ですが...うまくいけば、誰かが私が何をしているのか理解するでしょう!

+1

おそらくあなたはそれが面倒なUIのビットであるとして前にこれを見ていません...これをこのようにするための要件は何ですか? – Paddy

+1

なぜこのようなことをしたいですか? – naveen

+1

私はあなたが欲しいものを理解しています。あなたは、 "これはCSSを使ってこれを達成することは不可能かもしれません"と言います - javascriptが必要です(ボタンごとに*すべての*ドロップダウンを複製しない限り..)。私は@Paddyに同意します。これは混乱します。なぜ、それぞれが同じことをするのであれば、別々のボタンを持つのはなぜですか?現在のドロップダウンで少し違うことをしたいと思っています。 (異なる背景色や透明度?) – thirtydot

答えて

0

ナビゲーションのどの部分にもカーソルを合わせると、すべてのサブレベルが表示されますか?

ここには基本機能のjsfiddleがあります。 CSSを使用してスタイルを設定する必要があります。

例えば

http://www.alistapart.com/articles/hybrid/

http://htmldog.com/articles/suckerfish/dropdowns/

(Googleで数百の例があります)

+0

あなたのCSSソリューションは、私が欲しいものです。美しくて、私はそれを考えなかったとは思いません...私は、cssの別の行を追加して、リストされたリストのサブ項目を強調表示しました。 http://jsfiddle.net/MwB9e/5/ –

+0

@Usheen:代わりに 'margin-left:10px'を' padding'に変更することをお勧めします。そうすれば、上に乗ったリンクの下にあるリスト以外のリストに移動することができます。 [margin =問題あり](http://jsfiddle.net/MwB9e/7/)。 [パディング=より良い](http://jsfiddle.net/MwB9e/6/)。また、私はあなたが気にすることは疑いがありますが、IE6ではそれ以上の追加はありません。 – thirtydot

+0

パディングの呼び出しがうまくいっています。 ie6はアンカー上にのみホバーすることができます私は仮定している問題です。私は通常、すべてのページにie7.jsを含めて解決します。 http://code.google.com/p/ie7-js/ –

関連する問題