左側にサイドバーがあり、すべてのコンテンツが右側にある単純な HTML ページがあります。メインコンテンツエリアには<iframe>
. ただし、CSS を使用してフレームの高さを 100% に設定すると、何らかの理由で内容がオーバーフローするように見えdiv
、コンテンツの後に少量の空白が生じます。
ここに私のHTMLコンテンツがあります:
<div id="container">
<div id="sidebar">
<p>Sidebar content</p>
</div>
<div id="content">
<iframe id="contentFrame"></iframe>
</div>
</div>
そして、ここに私のCSSがあります:
html, body {
height: 100%;
}
#container {
position: absolute;
top: 0;
bottom: 0;
width: 100%;
background-color: grey;
}
#sidebar {
width: 100px;
float: left;
background-color: blue;
height: 100%;
}
#content {
margin-left: 100px;
height: 100%;
background-color: yellow;
}
#contentFrame {
border: none;
padding: 0;
margin: 0;
background-color: pink;
height: 100%;
}
(注:誰かが尋ねる前に#container { position: absolute }
、レイアウト上の理由から必要です。私はそれを変更できません。)
このフィドルで「動作」していることがわかります:http://jsfiddle.net/9q7yp/
目的は、ページの下部にある白い帯を取り除くことです (つまり、結果に垂直スクロール バーが表示されないようにする必要があります)。私が設定すればoverflow: hidden
、#content
問題はなくなります。必要に応じて喜んでこれを行いますが、これがないとうまくいかない理由を一生理解することはできません。誰でも理由を教えてもらえますか?