侧边栏位置“半”固定css

时间:2013-04-18 17:10:46

标签: css position fixed sidebar

如何获得固定的侧边栏,例如包含此网站上的社交按钮的侧边栏:

http://www.tripwiremagazine.com/2012/11/social-media-buttons-and-icon-sets.html

当我向下滚动时,我希望我的侧边栏固定在屏幕顶部,但是在页面顶部必须有一个绝对位置,以便它在浏览时停止跟随浏览器。

目前我只是在使用:

#sidebar { position:fixed; }

但是当到达页面顶部时,这并没有给出绝对的位置。

谢谢

2 个答案:

答案 0 :(得分:6)

<强> HTML

<div class="wrapper"><div class="abs" id="sidebar"></div></div>

<强> CSS

.abs { position: absolute; }

.fixed {
position: fixed;
top: 30px !important;}

#sidebar {
top: 150px;
left: 0;
height: 100px;
width: 20px;
background-color: #ccc;}

.wrapper {
height: 1500px;
padding: 20px;}

<强>的jQuery

 $(document).scroll(function() {
    var scrollPosition = $(document).scrollTop();
    var scrollReference = 10;
    if (scrollPosition >= scrollReference) {      
        $("#sidebar").addClass('fixed');   
    } else {
        $("#sidebar").removeClass('fixed');
        $("#sidebar").addClass('abs');
    };
});

此代码的演示:

http://jsfiddle.net/B3jZ5/6/

<div class="wrapper">

是内容的例子。

答案 1 :(得分:1)

你也可以尝试这个插件:

https://code.google.com/p/sticky-panel/