隐藏嵌套div的滚动条,但仍可滚动。
隐藏嵌套div的滚动条,但仍可滚动。
这个问题已经有了答案:
这里是我使用的参考资料,它解释了如何使一个带有隐藏滚动条的div可滚动。唯一的区别是我有嵌套的divs。查看我的fiddle
HTML:
a b c
CSS:
#main { width: 500px; height: 500px; } #sub-main { width: 500px; height: 500px; overflow: hidden; } #content { background-color: red; width: 500px; height: 500px; overflow: auto; } #item-container { width: 1500px; height: 500px; } .item { width: 500px; height: 500px; font-size: 25em; text-align: center; float: left; }
就像上面一样,我有一个溢出水平的div,我想隐藏它的滚动条。我必须让它仍然可以滚动,因为否则$.scrollTo()
将无法工作。
更新:
我已经阅读了所有的答案,但我仍然没有解决我的问题,也不知道导致问题的原因。这是有问题的现场。
基本上,我试图按照这个几乎完全相同的方式进行,但我的网站没有像预期的那样工作。有两个问题。
- 当我将
overflow: hidden
设置为可滚动项的父容器时,我无法滚动(本地javascript滚动函数也无法工作)。 - 我只想滚动溢出的容器,而不是整个窗口。可以通过在
$.localScroll({ target: \'#projects-content\' })
中设置目标来实现这一点,但当我设置目标时,什么都不会滚动。如果不这样做,在没有应用overflow:hidden
的情况下,滚动就会起作用。再次感谢任何帮助。
HTML:
first second third next prev
CSS
#project-content { width: 80%; height: 100%; position: relative; float: left; } #project-sidebar { float: left; width: 20%; height: 100%; } .project-item { width: 300%; height: 100%; } .project-subitem { height: 100%; width: 33.33%; position: relative; float: left; }
更新:
在我为 #project-content
添加了 overflow:scroll
之后,滚动效果如预期一样工作了。现在我只需要让滚动条在 #project-content
中消失。我尝试将其父元素添加 overflow:hidden
,但没有成功。我还尝试将其添加到 html,body
,但整个文档都不接受任何滚动函数,如 scrollTop()
。
任何帮助将不胜感激!
admin 更改状态以发布 2023年5月21日
滚动条占用大约20像素,因此只需将您的可滚动div增高20像素并加宽20像素,您的滚动条将被隐藏:
#content { background-color: red; width: 520px; height: 520px; overflow: auto; }
理论:
这项技术的做法是使用一个比具有滚动条的子元素更短的父容器。这张图片展示了我的意思:
实践:
在您的情况下,我建议使用绝对定位和负底部值在#project-content
上,以便它在底部超出其父容器(#projects
)。
现在的问题是什么负值?它应该是卷轴的宽度相同但是根据浏览器卷轴的宽度可能不相同,因此我建议给一个更大的值:-30px
以确保它被隐藏。您只需要小心不要在接近底部的地方有可能被浏览器隐藏的内容。
这是您应该添加到您网站的CSS:
#projects{ position: relative; } #project-content{ position: absolute; top: 0; left: 20%; bottom: -30px; /* remove: height: 100%; position: relative; float: left; padding-bottom: -15px /* }