0

ページの右側のメニューとして jQuery UI アコーディオンを使用しています。ただし、左のコンテンツよりもメニューのほうが長くなる場合があります。このため、アコーディオンのセクションを拡大/縮小すると、ブラウザのスクロールバーがアコーディオンのセクションを開いたときに拡大/縮小することがあります。私の考えは、アコーディオンが到達できる高さであるアコーディオンの下に div を配置することでした。アコーディオンが展開すると、それが重なって、ブラウザーのスクロールバーがまったく変更されません (意味があることを願っています)。position: absolute を指定し、高さと幅を宣言すると、レイアウトが台無しになり、フッターに重なって配置されますが、その下でにじみます。誰でもこれを機能させる方法について何か考えがありますか? より詳細な例が必要な場合は、それを提供するために何ができるかを確認しますが、

4

2 に答える 2

1

Min-height は IE 6 で簡単に実装できます。Dustin Diaz の最も古いハック:

selector {
    min-height:500px;
    height:auto!important;
    height:500px;
}

または式で:

selector {
    height:expression( this.scrollHeight < 499 ? "500px" : "auto" ); 
}

実際、IE 6 の高さは min-height のようなものです。overflow:hidden要素は、指定されるまで、その中のコンテンツとともに展開されます。

「* html hack」または条件付きコメントを使用してのみ、IE 6 のルールを常に適用できます。

于 2010-12-14T20:24:51.057 に答える
0

おそらく、メニューとコンテンツの周りにコンテナがありますよね? メニューの高さの最も高いものに等しいコンテナにcss min-heightを追加できます

于 2010-12-14T20:09:35.173 に答える