あいまいなタイトルですが、私が欲しいものを一文で説明するのは難しいです。
私の問題は次のとおりです。jQueryによってアクティブ化されたいくつかのドロップダウンメニューを備えたテンプレートがあります。ドロップダウンリストは、次のように、第1レベルのリスト内に第2レベルのナビゲーションアイテムとして表示されます。
<ul class="tools">
<li class="dropdown">
<a href="#">Tools</a>
<ul class="submenu">
<li><a href="/">Option 1</a></li>
<li><a href="/">Option 2</a></li>
<li><a href="/">Option 3</a></li>
</ul>
</li>
<li><a href="/">More</a></li>
</ul>
サブメニューはデフォルトで非表示になっており、サブメニューが属するリスト項目(この場合は「ツール」)をクリックすると表示できます。サブメニューは絶対位置に配置されているため、表示されるときは常にクリックされたリンクのすぐ下にあります。これはすべて完全に正常に機能します。
問題は、これらすべてがオーバーフローのあるdivにラップされていることです:非表示。サブメニューがこのdivの右側に近すぎて、リストアイテムが長すぎる場合、リストはラッパーの右側の境界線の下に表示され、部分的に非表示になります。オーバーフロー:autoはラッパーにスクロールバーを提供しますが、これは不要です。オーバーフロー:visibleは問題を解決しますが、ラッパーに高さがないようにするため、背景色と境界線が表示されなくなります。これは機能の一部であるため、どちらも役に立ちません。
大量のコードを引用する必要がないように、ライブの例をで見ることができますhttp://www.pkr.nl/template/forumdisplay.html
メニューをラッパーの外側に表示するか、適切な方法でメニューを適切に配置するソリューションを知っている人はいますか?