页面上有元素:
#current_colors_container{
position: fixed;
margin-bottom: 70px;
margin-top: 70px;
width: 23%;
left: 1.6%; }
如果我离开margin-top
它不会在向上滚动时覆盖上面的元素,如果我离开margin-bottom
它不会在向下滚动时覆盖底部页面的绝对元素。
但是这两个属性都不起作用,只能使用其中一个(列表中的第一个),我不明白为什么 - 我希望它在两个方向滚动时都有两个边距。
我尝试用 JQ 修复它不起作用:
$(window).scroll(function(){
if($("#current_colors_container").length>0){
var bottom_nav=$('#bottom_nav').offset().top;
var container_top=$("#current_colors_container").offset().top
var color_container=container_top+$("#current_colors_container").height();
if( bottom_nav<=color_container){
$("#current_colors_container").css({"margin-top":"", "margin-bottom":"70px"})
}
}
});
有没有纯 CSS 解决方案?或者我应该如何修复我的 JS 函数?
UPD
现在,JQ 修复工作,如果我从 ID CSS 中删除并margin
通过类提供它(使用函数addClass
和removeClass
像这样,我希望它停止浮动。