如何防止div内部滚动直到完全可见

时间:2017-09-28 13:07:19

标签: html css

我有一个单页网站,标题为100vh。现在,当您向下滚动时,我希望标题的底部保持在页面顶部。我有想法在标题下创建一个高度为90vh的部分(标题底部剩下10 vh)。

但我的问题是,当光标位于该部分时,浏览器将在该部分内滚动,而不是完全向下滚动该部分,直到它覆盖90vh。那么有一种方法可以在滚动部分之前先向下滚动页面吗?

一些代码来说明:



header {
  background-image(...);
  height: 100vh;
}

section {
  height: 90vh;
}

<header>
  some text
</header>

<section>
  some info here
</section>
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:1)

我不完全确定我是否理解正确,但这可能会引导你:

$(document).scroll(function() {
if ($(document).scrollTop() > 64) {
    $("#menu").css({
        "position": "fixed",
        "top": "0px"
    });
} else {
    $("#menu").css({
        "position": "absolute",
        "top": "64px"
    });
}
});

这也使用jQuery,但我认为它是可读的,它显示了我刚刚从我的项目中复制的解决方案

这是一个有效的演示:https://jsfiddle.net/nooorz24/L9pr8sj9/6/