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

Overflow-x:hidden也隐藏垂直内容

太叔景曜
2023-03-14

我有一个400px宽的DIV,包含两个并排的DIV,每个DIV的宽度为400px,高度为600px。两个DIV的宽度是固定的,但是高度可以变化。我希望隐藏第二个DIV,并完整地显示第一个DIV,在DIV中不滚动。

#schools-sub-nav {
}
#schools-container {
  width: 400px; /* Set the width of the visible portion of content here */
  background-color: fuchsia;
  position: relative;
  overflow-x: hidden;
}
#schools-list {
  width: 400px; /* Set the width of the visible portion of content here */
  height: 600px; /* Delete the height, let the content define the height */
  background-color: purple;
  position: absolute;
  top: 0;
  left: 0;
}
#boards-list {
  width: 400px; /* Set the width of the visible portion of content here */
  height: 600px; /* Delete the height, let the content define the height */
  background-color: green;
  position: absolute;
  top: 0;
  left: 400px;
}
<div id="schools-sub-nav"> <a href="#schools-list">Schools List</a> // <a href="#boards-list">Boards List</a> </div>
<div id="schools-container">
    <div id="schools-list"> One </div>
    <div id="boards-list"> Two </div>
</div>

我希望#schools-list是可见的,但是由于某些原因,#schools-container中的overflow-x:hidden隐藏了它。

共有1个答案

祝昊东
2023-03-14

你让两个div(有一个绝对位置)无效溢出规则的方式!

您需要更改位置类型(为正常/不是绝对),我建议使用浮动,最后,您想要应用溢出的容器div需要有一种方法来适应它,比如在末尾放置一个div并清除:both(在使用浮动的情况下)。

Edit:我刚刚试过了,您可以按照上面的建议隐藏第二个div,在里面添加另一个宽度非常大的环绕div,并将主容器div的Overflow-x更改为Overflow

<div id="schools-container">
  <div id="schools-container-inside">
     <div id="schools-list"> One </div>
     <div id="boards-list"> Two </div>
  </div>
</div>

然后是CSS(我注释了原来的未使用的CSS,并在最后添加了新的div类):

#schools-container {
    width: 400px; /* Set the width of the visible portion of content here */
    background-color: fuchsia;
    position: relative;
    /*overflow-x: hidden;*/
    overflow: hidden;
}
#schools-list {
    width: 400px; /* Set the width of the visible portion of content here */
    height: 600px; /* Delete the height, let the content define the height */
    background-color: purple;
    /*
    position: absolute;
    top: 0;
    left: 0;
    */
    float: left;
}
#boards-list {
    width: 400px; /* Set the width of the visible portion of content here */
    height: 600px; /* Delete the height, let the content define the height */
    background-color: green;
    /*
    position: absolute;
    top: 0;
    left: 400px;
    */
    float: left;
}
#schools-container-inside {
    width: 10000px;
    overflow: hidden;
}

JsFiddle这里:http://JsFiddle.net/mbmac/

 类似资料:
  • 在Chrome浏览器中打印报表时如何删除滚动条。下面是我的代码: 图片如下:

  • 问题内容: 我在Angularjs中遇到问题,在我的数据从服务器返回之前,HTML出现了闪烁。 这是演示该问题的视频:http: //youtu.be/husTG3dMFOM-注意#| 和右边的灰色区域。 我尝试了ngCloak,但没有成功(尽管ngCloak确实阻止了括号未如期出现),并且想知道隐藏内容的最佳方法,直到Angular填充HTML。 我在控制器中使用了以下代码: …但是我一次又一次

  • 问题内容: 我有一个固定宽度但高度可变的HTML文本区域。我想设置并能够显示一个垂直滚动条,但不能显示水平滚动条。由于其他与我的情况有关的其他原因,我无法使用。 我知道无法使用CSS2仅显示垂直滚动条,而不能显示水平滚动条。我可以使用JavaScript隐藏水平滚动条吗? 问题答案: 您可以像这样使用CSS:

  • 我的目标是创建一个具有特定条件的表: 如果显示宽度太小,无法容纳内容,请添加水平滚动条,并且不要收缩单元格。 如果显示高度太小,无法容纳内容,请添加垂直滚动条,并且不要收缩单元格。 我设法实现了这一点,但我有一个问题,如果显示宽度和高度都太小,不能适合内容,垂直滚动条是完美的,但水平滚动条隐藏在垂直溢出下。因此,如果用户希望看到整个第一行,他/她需要垂直滚动到末尾,然后水平滚动到末尾,最后垂直往回

  • 问题内容: 。 在桌面浏览器中查看时,黑色菜单栏正确地延伸到窗口的边缘,因为具有。 在任何移动浏览器中,无论是Android还是iOS,黑色菜单栏都将显示其完整宽度,从而在页面右侧显示空格。据我所知,该空格甚至不是or标签的一部分。 即使我在中将视口设置为特定的宽度: 该站点扩展到1100像素,但仍然有1100以外的空白。 我想念什么?如何将视口保持在1100并切断溢出? 问题答案: 创建内部的一