我正在创建一个标题,当用户向下滚动超过一定数量的像素时,它会固定在适当的位置。我的标题是 121 像素高,但我要粘贴的标题部分是标题的底部 42 像素;这确实有效,但在它开始粘住页面时,页面会跳升约 50 像素。
我对可能导致问题的原因的想法是$('#header').css({position: 'fixed'});
。我认为一旦fixed
应用了内容,内容div
就不再考虑边距。我尝试过使用不同的位置,但对我来说没有任何效果。
我创建了一个JSFIDDLE来更好地说明我的问题。
查询代码
$(window).scroll(function()
{
if( $(window).scrollTop() > 79 )
{
$('#header').css({position: 'fixed'});
}
else
{
$('#header').css({position: 'static', top: '-79px'});
}
});
CSS 代码
body {
margin: 0;
padding: 0;
}
#header {
width: 100%;
height: 121px;
background: url(http://libertyeaglearms.com/dev/admin/graphics/header-bg.png);
}
#content {
margin: 10px auto;
width: 300px;
min-height: 600px;
}
HTML
<div id="header">header</div>
<div id="content">content goes here</div>