当前位置: 首页 > 知识库问答 >
问题:

隐藏滚动条,但仍然可以滚动

孔征
2023-03-14

我希望能够滚动通过整个页面,但没有滚动条显示。

在Google Chrome中是:

::-webkit-scrollbar {
    display: none;
}

但Mozilla Firefox和Internet Explorer似乎不是这样工作的。

我也在CSS中尝试过这个:

overflow: hidden;

这确实隐藏了滚动条,但我不能再滚动了。

有没有一种方法,我可以删除滚动条,同时仍然能够滚动整个页面?

请使用CSS或HTML。

共有3个答案

齐健柏
2023-03-14

这对我来说适用于简单的CSS属性:

.container {
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
}
.container::-webkit-scrollbar { 
    display: none;  /* Safari and Chrome */
}

对于较旧版本的Firefox,请使用:overflow:-moz-scrollbars-none;

邵耀
2023-03-14

它在WebKit中很容易实现,具有可选的样式:

html {
    overflow: scroll;
    overflow-x: hidden;
}
::-webkit-scrollbar {
    width: 0;  /* Remove scrollbar space */
    background: transparent;  /* Optional: just make scrollbar invisible */
}
/* Optional: show position indicator in red */
::-webkit-scrollbar-thumb {
    background: #FF0000;
}
阎弘
2023-03-14

只是一个正常工作的测试。

#parent{
    width: 100%;
    height: 100%;
    overflow: hidden;
}

#child{
    width: 100%;
    height: 100%;
    overflow-y: scroll;
    padding-right: 17px; /* Increase/decrease this value for cross-browser compatibility */
    box-sizing: content-box; /* So the width will be 100% + 17px */
}

工作小提琴

由于滚动条的宽度在不同的浏览器中是不同的,所以最好用JavaScript来处理。如果执行element.offsetwidth-element.clientwidth,则会显示准确的滚动条宽度。

JavaScript工作小提琴

使用position:absolute,

#parent{
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
}

#child{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: -17px; /* Increase/Decrease this value for cross-browser compatibility */
    overflow-y: scroll;
}

工作小提琴

JavaScript工作小提琴

基于这个答案,我创建了一个简单的滚动插件。

 类似资料:
  • 问题内容: 我希望能够滚动浏览整个页面,但不显示滚动条。 在谷歌浏览器中: 但是Mozilla Firefox和Internet Explorer似乎无法正常工作。 我也在CSS中尝试过: 那确实隐藏了滚动条,但我不能再滚动了。 有什么办法可以删除滚动条,同时仍然可以滚动整个页面? 请仅使用CSS或HTML。 问题答案: 只是测试工作正常。 JavaScript: 由于滚动条的宽度在不同的浏览器中

  • 有没有办法隐藏滚动条,仍然可以使用鼠标或方向键向上滚动? 有人能帮忙吗?

  • 问题内容: 我想知道是否有可能隐藏滚动条,而仍然使用鼠标/键盘启用滚动。 我试图使用CSS: 。效果是禁用滚动条 和 禁用滚动。 问题答案: 供将来参考,还有一个不带jQuery的解决方案-仅使包装div样式包含并使用以下JavaScript两行代码:

  • 问题内容: 我想知道是否有可能隐藏滚动条,而仍然使用鼠标/键盘启用滚动。 我尝试使用CSS :。效果是禁用滚动条 和 禁用滚动。 问题答案: 为了将来参考,还有一个没有jQuery的解决方案-仅使包装div样式包含并使用以下JavaScript两行代码:

  • 这是我使用的一个引用,它解释了如何使一个div在其滚动条隐藏的情况下可滚动。唯一的区别是我有嵌套的div。检查我的小提琴 HTML: CSS: 像上面,我有一个溢出的水平div和我想隐藏它的滚动条。我必须使其仍然可滚动,因为否则将无法工作。 更新: 我已经读了所有的答案,但我仍然没有解决我的问题,也不知道是什么原因造成的。这是有麻烦的生活。基本上,我试图遵循这几乎完全相同的,但一定有一些原因,我的

  • 我有一个,其元素样式如下: 我需要允许滚动沿Y轴当它变得高于300px,这工作很好。但我需要将设置为滚动条本身。 我尝试使用这个元素样式: 当它隐藏滚动条时,它也不允许滚动。有没有一种方法可以在滚动条不可见的情况下滚动?