Div固定在垂直滚动上但绝对在水平上

时间:2013-07-21 18:40:15

标签: html css css-position

这就是我想要的。我想在栏上附上一个顶栏和导航菜单。我这样做没问题。如果我向上和向下滚动,我想要栏和导航菜单跟着我。我可以通过固定位置来做到这一点。但是,如果我有一个固定的位置,那么当我从左向右滚动时,它们会跟随。

我希望顶部栏和导航菜单都跟随用户向上和向下滚动,但如果它们从左向右滚动,我希望它像绝对位置一样,并且部分或完全隐藏(取决于如何很多用户滚动)。

这可能吗?我已经看过几个主题,但却无法让它为我工作。

这是我的jfiddle http://jsfiddle.net/kyleseitz/rX4Vh/11/

当我向上滚动并向上滚动时,我希望一切都向下移动。但是,如果我得到一个水平滚动条,我想通过它的观察窗口。

我在上一个问题上找到了javascript,但我无法让它为我工作。

.slim {position: absolute;}


<div id="phantombar" class="slim">

<!--I Technically don't need these if they are not neccessary-->    
<div id="phantombar" class="fixed_elem">
<div id="headWrap">

2 个答案:

答案 0 :(得分:0)

尝试使用它。也许有效:

$(function(){
   var elements = $('#ptm, #spt, #support, #act, #left_nav');
   elements.css('position', 'absolute');

   $(window).scroll(function(){
       if($(this).scrollLeft()){
           elements.removeAttr('style').css('position', 'absolute');
       }else{
           elements.removeAttr('style').css('position', 'fixed');
       }
   });
});

elements可以根据需要添加更多内容。

答案 1 :(得分:0)

ScrollToFixed是一个jQuery插件,用于修复页面上的元素(顶部,底部,任何地方);但是,它仍然允许元素继续向左或向右移动水平滚动。

网站:https://github.com/bigspotteddog/ScrollToFixed

演示:http://bigspotteddog.github.io/ScrollToFixed/