html - 具有水平 overflow hidden CSS 的可变高度 HTML 元素

标签 html css

我需要隐藏 html 元素的水平溢出而不是垂直溢出。所以假设我有以下 HTML:

<div class="container">
  <div class="inner">
    <p>content 1</p>
  </div>
  <div class="inner">
    <p>content 2</p>
    <p> and then some more stuff</p>
  </div>
</div>

我想使用的 CSS 是这样的:

.container{
  overflow:hidden;
  width:100px;
}
.inner{
  width:200px;
}

我遇到的问题是元素 div.container 的高度将为零,因为我没有在 CSS 中定义高度。但是容器中内容的高度可能是可变的,因此我无法设置特定的高度。

我可以使用 JavaScript 动态设置元素的高度,但我想避免这样做。

最佳答案

由于没有高度(是变量),Y轴不会溢出,没必要。容器将根据需要在 Y 上简单地扩展以适应内部内容,因此即使您使用 overflow:visible; 强制溢出可见性或 overflow-y:visible;它将没有滚动条。

如果您需要垂直溢出,您必须至少指定max-height:<value>.<units>; & overflow-y:auto; overflow-x:hidden; , 因此,如果内容在 Y 轴上溢出,它会显示一个滚动条。

关于html - 具有水平 overflow hidden CSS 的可变高度 HTML 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1723739/

相关文章:

javascript - 如果我使用 &lt;input&gt;,则使用 jQuery 停止 CSS 动画

css - fieldset 不遵循其父项的高度

javascript - 在meteor.js 中实现响应式(Reactive)按钮的最佳方法?

html - 对齐项的限制 :stretch on flexbox?

jQuery Mobile 导航栏包装在 4 个(而不是 5 个)元素上

javascript - 防止在 HTML 中选择

html - 提交按钮不填满 FF 中列表项的全宽

html - 如何使用CSS实现复杂的按钮样式

javascript - 如何使用图像作为框架,并在里面滚动?在网站上模拟电话

html - 如果第一个元素不是 p,则直接选择 div 内的第一个 Div 元素