如何删除div中的水平滚动条?


Answers:


208
overflow-x: hidden;


谢谢您节省了很多时间。有人可以将其标记为可接受的答案吗?
Nagarajan SR

5
这是一个糟糕的解决方案。因为在这种情况下,您只是将水平滚动隐藏在容器中。但是,如果此容器太大,则您的内容将无法放入您的容器中。
Alex Filatov


21

使用overflow-y: scroll,即使不需要垂直滚动条,它也将始终存在。如果您希望y-scrollbar仅在需要时才可见,我发现这可行:

.mydivclass {overflow-x: hidden; overflow-y: auto;}


13

将此代码添加到您的CSS。它将禁用水平滚动条。

html, body {
    max-width: 100%;
    overflow-x: hidden;
}

10

无滚动(不指定x或y):

.your-class {
   overflow: hidden;
}

删除水平滚动:

.your-class {
   overflow-x: hidden;
}

删除垂直滚动:

.your-class {
   overflow-y: hidden;
}

OP需要在没有滚动条的情况下滚动
T04435

8

要隐藏水平滚动条,我们只需选择所需div的滚动条并将其设置为 display: none;

需要注意的一件事是,这仅适用于基于WebKit的浏览器(例如Chrome),因为Mozilla没有可用的选项。

为了选择滚动条,使用 ::-webkit-scrollbar

因此,最终代码将如下所示:

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



2

用:

overflow: auto;

这将显示垂直滚动条,并且仅在出现垂直溢出时才显示,否则将被隐藏。

如果同时有x和y溢出,则将同时显示x和y滚动条。

要隐藏x(水平)滚动条,即使存在也可以添加:

overflow-x: hidden;

body {
    font-family: sans-serif;
}

.nowrap {
    white-space: nowrap;
}

.container {
    height: 200px;
    width: 300px;
    padding 10px;
    border: 1px solid #444;

    overflow: auto;
    overflow-x: hidden;
}
<div class="container">
<ul>
  <li>Item 1</li>
  <li>Item 2</li>
  <li>Item 3</li>
  <li>Item 4</li>
  <li>Item 5</li>
  <li>Item 6</li>
  <li>Item 7</li>
  <li class="nowrap">Item 8 and some really long text to make it overflow horizontally.</li>
  <li>Item 9</li>
  <li>Item 10</li>
  <li>Item 11</li>
  <li>Item 12</li>
  <li>Item 13</li>
  <li>Item 14</li>
  <li>Item 15</li>
  <li>Item 16</li>
  <li>Item 17</li>
</ul>
</div>




-3

我一直在使用的地方遇到问题

overflow: none;

但是我知道CSS并不是真的很喜欢它,而且对于我想要的方式它也不是100%有效。

但是,这是一个完美的解决方案,因为我的内容都不应该超出预期,并且已经解决了我遇到的问题。

overflow: auto;
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.