我在页面上有几个position:absolute;left:200%;
元素。 left:200%;
旨在使元素远离视线,但仍允许元素从右侧出现过渡。
我的body
和html
元素的相关CSS如下:
html, body {
margin:0;
padding:0;
height:100%;
}
body {
min-height:100%;
overflow-x:hidden;
}
页面加载时,看起来很好。没有水平滚动条但有一个垂直滚动条。但是,当按下鼠标中键或按键盘上的右箭头时,我仍然可以向右滚动,显示元素。
我已经读过,解决方法是将overflow-x:hidden;
添加到html
元素,但是当我这样做时,其他一些position:absolute;
页面元素会与垂直滚动重叠栏并开始像position:fixed;
元素一样行动(它们不会与页面的其余部分一起滚动,而是与窗口保持相同的位置)。
我还读到可以使用JavaScript修复水平滚动问题,但我无法在StackOverflow或其他任何地方找到一个好例子或完整解释。< / p>
我如何解决这个问题,最好是使用CSS,但必要时使用JavaScript,同时保持页面上的所有其他内容(重要的是position:absolute;
仍然采用这种方式)?