私が作成したメニューを表示するフィドルがあります。
縦型メニューです。私が抱えている問題は<li>
、メニューに追加するほど、画面に収まりにくくなることです。
例: トップ メニュー項目 ( A ) には、画面の上に広がるほとんどのコンテンツがあります。メニューに多くの項目 (a、b、c、d ...z) があり、一番下のメニュー項目 ( z ) が画面の下部を超えて拡張されると想像してください。
私の問題を複雑にするために、メニューの中央にあるメニュー項目に多くの要素があると想像してください。これは、画面の上部を超えて拡張されます。これは私が望むものではありません。実際には、メニュー フライアウトが周囲のウィンドウに応答し、内部に収まるようにしたいと考えています。
次のように表示される前に、各グループに中央に配置するように指示することから始めました。
var groupList = $(e.target).find('.group-list');
groupList.css({
'margin-top': (-groupList.height() / 2) + 'px'
});
groupList.show();
残念ながら、これでは十分ではありません。ただし、それぞれがその周りのウィンドウを認識し、ウィンドウ内に収まるほど応答するようにする方法がわかりません。
groupList.css({}) コードを書き直して、グループ リスト クラスをレスポンシブにし、ウィンドウ内に収まるようにするにはどうすればよいですか?
追記:長文で申し訳ありません。私が抱えていた設計上の問題を説明したかったので、皆さんが理解し、うまくいけば正しい方向に私を向けることができました.