我正在尝试在滚动div中放置一个position: absolute
div,并在向左或向右滚动时使其保持在左侧。这是因为我希望div像一个单元一样移动(当向左,向右,向上,向下滚动时)。它在屏幕上工作得很好,低于2K,但在高清屏幕上(即2k,3k,4k ......),孩子们跳来跳去,看起来很糟糕。
有更好的方法吗?我应该对CSS for HD屏幕做出什么改变?
#parent {
overflow: auto;
width: 100%;
height: 100%;
position: relative;
}
#child {
overflow: hidden;
width: 20%;
height: 100%;
z-index:1;
position: absolute;
}
<div id="parent">
<div id="child"></div>
</div>
$("#parent").on('scroll', function (event) {
$("#child")[0].style.marginLeft = this.scrollLeft+"px";
});
答案 0 :(得分:2)
您可以使用jQuery的css
函数来设置值。并使用parent元素作为jQuery对象来使用scrollLeft()
函数:
$("#parent").on("scroll", function() {
$("#child").css("margin-left", $(this).scrollLeft() + "px");
});
但我根本不会使用jQuery。为什么不在css中使用fixed
位置呢? Like in this example。它不应该闪烁在任何屏幕上。