0

我有一个 Tumblr 帐户,我正在编辑它的 html。我的问题是:如何让我的侧边栏处于某个位置,但是当我在页面上向下滚动时,它会停留在相对于我的浏览器的位置?有关我正在谈论的示例,请单击提出问题并查看“类似问题”,然后滚动。我希望它在 CSS 中。我已经尝试了我能想到的一切。

http://snipt.org/AGff7

那是我开始的代码,加上我在末尾的自定义 CSS<style>

我已经试过了position:fixed

我希望它从浏览器窗口的中间开始,然后当我向下滚动时,它会到达窗口的顶部并相对于窗口保持固定。

4

1 回答 1

0

您肯定需要为此使用 JS,因为 CSS 无法检测到滚动。这是一个基本示例:

<div id="scroller" class="floating"></div> 

这是我们的原始元素,它已经部分位于页面下方并漂浮在中间。风格喜欢

.floating{
  margin-top: 50px;
}

然后我们需要使用 Javascript 来测量用户何时向下滚动(我使用 jQuery 完成了此操作)

$(window).scroll(function(){
    if($(this).scrollTop() > 50){
        $('#scroller').removeClass('floating');
        $('#scroller').addClass('fixed');
    }else{
        $('#scroller').addClass('floating');
        $('#scroller').removeClass('fixed');
    }
});

你有一个固定的替代CSS声明

.fixed{
    position: fixed;
}
于 2013-07-12T06:48:26.063 回答