ページのサイズを垂直方向に変更するときに、divのスクロールを下に固定しておくのに問題が.content
あります。つまり、ユーザーが画面のサイズを変更しているときにフッターが上に移動した場合、「ウィンドウ」という単語が最後に表示されなくなります。フッターは「JustSomeText」という単語をスクロール可能なコンテンツにプッシュする必要がありますが、「Window」は表示されたままでfooter
divの上にある必要があります。ただし、現在は逆のことが発生します。ページのサイズが変更されると、 footer
「window」、「the」、「of」などの単語をカバーして上に移動し、「JustSomeText」が表示されたままになります。さっきも言ったように、いわば「反対」である必要があります。
だから私の質問は:ページのサイズ変更中に継続的に一番下までスクロールし続けるにはどうすればよいですか?
これがフィドルです:http: //jsfiddle.net/N672c/2/
この質問の目的のために、ここに基本的なhtml構造があります。
<header></header>
<div id="content_id" class="content">
<div class="container">
Just<br>
Some<br>
Text.<br>
Try<br>
resizing<br>
the<br>
height<br>
of<br>
the<br>
window
</div>
</div>
<footer></footer>
一部のCSSも:
header, footer {
position: fixed;
left: 0; right: 0;
height: 100px;
background: teal;
}
header { top: 0 }
footer { bottom: 0 }
.content {
position: fixed;
top: 100px; bottom: 100px;
left: 0; right: 0;
overflow-y: scroll;
}
.container {
padding: 20px;
position: absolute;
left: 0;
right: 0;
bottom: 0;
}
そして少量のJavaScript:
var $content = $('.content'),
$container = $('.container'),
containerHeight = $container.outerHeight();
$(window).resize(function () {
$container.css({
position: $content.innerHeight() > containerHeight ? 'absolute' : 'static'
});
}).resize();