垂直居中div时无法平滑滚动

时间:2015-01-17 15:55:40

标签: javascript css smooth-scrolling

我有一个div,我已经垂直和水平居中:

#mydiv {
  width:960px;
  height:400px;
  position:fixed;
  margin-left:-480px;
  margin-top:-200px;
  top:50%;
  left:50%;
}

当我使用Smoothscroll.js库时,它将无法正常工作。如果我删除了“position:fixed / position:absolute”,那么我的div不再居中。是不是我可以实现平滑滚动和居中?

1 个答案:

答案 0 :(得分:0)

我自己找到了解决这个问题的方法。我在屏幕顶部制作了一个假的(不可见的)div,它在屏幕大小后改变了高度。然后我将我的可见(#mydiv)置于其下,没有任何css定位。

#mydivfake {
  width:1000px;
  height: calc(50vh - 310px); /*310px is half of the height of my visible centered div*/
  margin-left:-500px;
  left:50%;
}