問題は、宣言したように親の高さを継承することですが、タイトルにはさらに2つのdivがあるため、100%を超えてスクロールするため、すべての余地がありません:)
OKここにアプローチがあります:
ただし、タイトル div が 1 行のみであることを確認する必要があります。そうしないと、間違った計算になってしまいます。
もしそうなら、これを追加します
<div class="dlgrid" style="overflow: hidden;......height:700px;">
<div class="title">Title</div>
<div>Title 2</div>
<div class="dlInnerDiv" style="overflow:auto;">....
CSS:
div.title{
line-height:20px;
}
div.title + div{
line-height:18px;
}
また
div.title{
height:20px;
}
div.title + div{
height:18px;
}
その場合、700-20-18 = 662、またはそれらに与える高さが何であれ、残りは次のとおりです。
div.dlInnerDiv{
max-height:662px;
}
また、次のような不要なマージンとパディングをすべてリセットする必要があります
div.dlgrid,div.dlgrid div{
margin:0;
padding:0;
}
または任意の値ですが、上記の高さを合計するときに考慮してください。これは、これらの垂直方向が関与する各要素に影響を与えるためです。
私が理解したことを願っています。これがあなたが求めているものですhttp://jsbin.com/ubiniy/23 :)
これはその特定の問題のみを解決し、望ましくない動作が発生する可能性があることに注意してください。そのため、特定の状況に応じて動的コンテンツの高さを修正するこのようなアプローチはお勧めしません.
私のアドバイスは、他の人がグリッドを作成してこの問題をどのように解決したか、またはもう一度お湯を見つける必要がないものを見てください:)