親コンテナ内にそれぞれ3つのdivがあります。上のdivは固定された高さです。ボトムdivには、未知の量の垂直スペースを占めるが、その中に表示されるすべてのコンテンツが必要なコンテンツがあります。上のdivは残りの縦のスペースを埋めるはずです。私は最近、っぽいレガシーブラウザ(例えば、IE9 +)&モバイルブラウザ(例えばアンドロイド4.4以降)、そのフレキシボックスベースのレイアウトをサポートするために必要なすべての下のdivをレンダリングした後、残りの高さを埋めるために上のdivを取得する方法は? (フレックスボックスなし)
<div id="container"> // 100% of visible window height but should not overflow
<div id="top"> // Fixed height
</div>
<div id="middle"> // Use remaining vertical space
</div>
<div id="bottom"> // Unknown height but contents should all be shown
</div>
</div>
が出ています。私がしようとする(jQueryのを使用して)Javascriptを試してみました
middle div height = container height - (top div height + bottom div height)
を設定しますが、ブラウザがページの間に下のdivの高さを誤報告されたいくつかの理由で(勝利7の最新クローム)レンダリングので、結果が間違って出てきました。私は可能な限りJSを避けたい(ソリューションがあれば開いている)。
できるだけ多くのデスクトップおよびモバイルブラウザをサポートする必要があります。 flex
を使用することができない古いブラウザについては、 おかげ