私の質問は、親 div のサイズを事前に知ることができない場合に、JavaScript を使用せずに、子 div を親の境界線を超えることなく拡張する方法があるかどうかです。
以下は、私の問題を示すマークアップ/スタイルのサンプルです。これをブラウザーにロードすると、#two
と#three
の両方が親の外に出て、#one
スクロールバーが表示されることがわかります。
私の問題はスクロールバーではありませんが、親の全高または幅ではなく、残りの幅または高さを子 div に占有するように子 div に指示する方法がわかりません。
<html>
<head>
<style>
html, body {width:100%;height:100%;margin:0;padding:0;}
.border {border:1px solid black;}
.margin { margin:5px;}
#one {width:100%;height:100%;}
#two {width:100%;height:50px;}
#three {width:100px;height:100%;}
</style>
</head>
<body>
<div id="one" class="border">
<div id="two" class="border margin"></div>
<div id="three" class="border margin"></div>
</div>
</body>
</html>