嵌套溢出滚动隐藏的溢出不起作用

2024-03-16

我有一个 div 没有被剪切到父级的问题,即使它有overflow: hidden.

我已经浏览过overflow: hiddenstackoverflow 上有问题,但大多数都有问题position或者似乎表明我的代码应该可以工作。

这是一个MWE,你可以找到jsfiddlehere https://jsfiddle.net/huocukw7/1/:

<div id="parent">
  <div id="scroller">
    <div id="child">
      meh
    </div>
  </div>
</div>

CSS:

#parent {
  height: 500px;
  overflow: hidden;
}

#scroller {
  overflow: scroll;
}

#child {
  height: 10000px;
}

我的期望是什么

#parent has overflow: hidden so #scroller被剪裁到父级的高度。因为它是#child比结果高度高overflow: scroll结果出现滚动条。

会发生什么

#scroller只是使用高度#child并忽略两者overflow特性。

简单的解决方法怎么样?

  • 在我的现实世界中,有多个问题<div>s in #parent所以我不能给#scroller一个高度。
  • html 是自动生成的,所以我不能直接删除#scroller.

感谢大家的帮助, 斯特凡

ANSWER

实际上,评论中有一个仅 CSS 的答案display: flex. See:

https://jsfiddle.net/huocukw7/6/ https://jsfiddle.net/huocukw7/6/

#parent {
  height: 500px;
  overflow: hidden;
  display: flex;
  flex-direction:column;
}

#scroller {
  overflow: auto;
  flex-grow:1;
}

#child {
  height: 10000px;
}

您需要做的就是提供height给你的#scroller

#scroller {
  overflow: scroll;
  padding: 10px;
  background-color: red;
  height: 100%;
}

Demo https://jsfiddle.net/huocukw7/3/


根据你的观点 -在我的现实世界问题中,#parent 中有多个 s,所以我无法给 #scroller 高度。

没有其他方法可以使其可滚动而不分配height到它。如果没有它,它会拉伸直到子元素结束,这不会使你的包装器可滚动。

您可以在这里使用 JavaScript 来计算height在运行时并将其附加到元素。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

嵌套溢出滚动隐藏的溢出不起作用 的相关文章

  • 如何使用简单的CSS创建向上箭头向下箭头

    请找到这个CSS类来创建简单的向上箭头 向下箭头 向左箭头和向右箭头
  • 如何将CSS应用于iframe?

    我有一个简单的页面 其中有一些 iframe 部分 用于显示 RSS 链接 如何将主页中相同的 CSS 格式应用到 iframe 中显示的页面 Edit 这不能跨域工作 除非有适当的CORS 标头 https developer mozil
  • 使用CSS调整div以填充父容器的宽度[重复]

    这个问题在这里已经有答案了 我有一个容器宽度为 100 的页面 因此它是屏幕的整个宽度 我在网格结构中有几个 DIV 它们都有 float left 且没有设置宽度 只有 10px 的边距 有没有一种方法 使用 CSS 或 jQuery 让
  • 欺骗或禁用页面可见性 API

    页面可见性 API https developer mozilla org en US docs Web Guide User experience Using the Page Visibility API开始普遍用于在选项卡未处于焦点时
  • 当 Flexbox 项目以列模式换行时,容器不会增加其宽度

    我正在研究一个嵌套的弹性盒布局 它应该按如下方式工作 最外层 ul main 是一个水平列表 当向其中添加更多项目时 该列表必须向右扩展 如果它变得太大 应该有一个水平滚动条 main display flex flex direction
  • 如何缩小aspx页面

    我正在开发一个基于网络的口袋妖怪在线 http www pokemoncraft com游戏 由于它是在线的 我想优化它以尽可能快地运行 我已经安装了 Firebug Page Speed 建议缩小我的 HTML 输出 我还使用 VS200
  • 我应该如何使用 Bootstrap 设计 Django 验证错误的样式?

    当 Django 中的表单出现验证错误时 错误会在包含类的列表中给出errorlist 可以通过设置使用 Bootstrap 为元素指定错误样式class alert alert error 结合这些并使用 Bootstrap 的错误样式来
  • Jquery onclick 更改图像 - 3 个产品支架

    EDIT 我想添加另一个按钮 因此总共有 3 个按钮 而不是 2 个 我怎样才能做到这一点 我尝试添加产品支架 3 但如果我先单击按钮 1 然后单击按钮 3 则两个按钮都具有相同的背景图像 预览 http gyazo com 6698586
  • Flexbox 未将内容垂直居中

    所以我尝试使用 Flexbox 将我的名字放在屏幕中间 在浏览了许多教程之后 他们说我需要完成此操作的唯一代码是 div display flex flex direction column justify content center a
  • 处理重叠 SVG 图层中的鼠标事件

    我正在使用 d3 js 构建地图可视化 我正在为美国各州和县绘制填充多边形 县的 SVG 图层位于州图层下方 状态已填充 但填充不透明度设置为 0 我认为 需要填充来捕获点击事件 我想捕获州级的点击事件 但我想捕获县级的鼠标悬停事件 但是
  • 如何跨页面播放背景音乐

    我已经读过这个问题 我知道它只能用框架来完成 我真的不想要全站点 AJAX 如何在多个 HTML 页面上播放背景音频 https stackoverflow com questions 4210370 how to play a backg
  • 类名中的方括号是什么意思?

    I saw here http www position absolute com articles jquery form validator because form validation is a mess 类名中使用的方括号
  • 确定是否单击了 Google Chrome 打印预览中的打印/取消按钮

    我一直在使用下面的代码打印我的页面 window print 下图是 Google Chrome 浏览器中的打印预览的样子 它有两个主要按钮 print and cancel 我想知道用户是否点击了print or cancel纽扣 我所做
  • 如何并排展开和折叠三个div?

    document ready function toggle click function if this data name show sidebar animate width 10 hide map animate width 89
  • 是否可以使用 JavaScript 导入 HTML?

    我有一些具有相同页脚的 html 页面 使用 JavaScript 并且仅使用 JavaScript 我可以在其中导入另一个 html 页面吗 下面介绍了如何仅使用 JavaScript 向页面添加页脚 2022 代码 使用fetch ht
  • CSS:DIV 中的文本被截断

    我正在致力于集成一个 jQuery 插件 该插件会隐藏页面的某些部分 直到用户单击 喜欢按钮 Facebook 小部件的部分文本被切断 我已经尝试过 CSS 但无法让它完全显示 如果容器的宽度设置正确 还有什么可能导致文本被截断 例子 ht
  • 更改滚动条样式

    我们可以更改滚动条样式吗 我想在其上放置图像 而不是默认滚动条 No IE 允许更改某些滚动条元素的颜色 但其他浏览器 不 唯一的解决方案是使用自定义 JS 来实现这一点 但这总是比本机控件更丑陋和无用 看一眼 http www kelvi
  • CSS3 Marquee / Ticker 动画最后没有空格

    我正在用 2 个项目集合构建字幕 旋转木马效果 循环两者item collection跨越translateX并不难 这里是小提琴 http jsfiddle net k1k3h2p0 但我不喜欢每个循环末尾的空白区域 知道两个集合的宽度可
  • Angular 2:将路由器出口设计为宽度 < 100%

    我正在构建一个 Angular 2 应用程序 该应用程序将为宽度超过 500 的屏幕提供侧导航栏 为宽度小于 500 的屏幕提供底部导航栏 现在 我尝试为侧栏分配 20 的宽度 即 80 应用内容 我遇到的问题是路由器出口内容 即实际的应用
  • jQuery - 将日期选择器的容器设置为特定的 div

    我在 div 上使用 jQuery UI 日期选择器 div通过移动鼠标隐藏和显示 因为日期选择器存在于末尾标签 不在我的 div 内 当我将鼠标移动到日期选择器时 div 消失 我像这样加载了日期选择器 JavaScript dt1 da

随机推荐

  • 使用 Jekyll 的 Github 页面推送网站后出现空白页面

    我使用 Jekyll 创建了一个 GitHub Pages 网站 浏览时一切正常http 本地主机 4000 http localhost 4000 然后我push到github上 但是访问的时候什么也没有 空白页 没有错误 没有内容 ht
  • 如何检测在asp.net (mvc) 中单击了哪个提交按钮

    我已经阅读了大量使用提交类型输入值的答案 但我的输入按钮集合需要全部具有相同的文本 其他人使用 Javascript 我也试图避免这种情况
  • CreateView 中的 DatepickerWidget

    在我的模型中 我有一个日期字段 所以我想使用日期选择器 如何使用 Django Admin 日期选择器 我找到了在表单中执行此操作的示例 但我只设计了一个模型 是否可以在我的模型中定义这个小部件 您可以使用get form覆盖小部件属性的方
  • Twilio javascript 客户端回调呼叫应答

    我正在使用 Twilio JavaScript 客户端 我能够拨打电话 捕获回调事件 连接和断开连接 如何实现接听电话时的回调 我需要在接听电话后显示通话计时器 Twilio js 客户端有一个 Device 属性 其中包含您可以使用的以下
  • 如何运行 git log 以仅查看特定分支的更改?

    我有一个本地分支跟踪远程 主分支 运行后git pull and git log 日志将显示远程跟踪分支以及当前分支中的所有提交 但是 由于对远程分支进行了如此多的更改 因此我只需要查看对当前本地分支所做的提交 用于仅显示特定分支的提交的
  • 特金特;新班级中的顶级

    我正在使用 Python 和 Tkinter 开发一个项目 我想将其模块化 主要问题之一是我的实施Toplevel小部件太大 我听说可以将此小部件放入一个新类中 问题是我不知道怎么办 这是我定义主窗口的方式 class App tk Tk
  • 如何处理第三方库代码中的 exit() 调用?

    我正在开发一个 C 应用程序 该应用程序使用另一个团队用 C 编写的库 图书馆的作者喜欢打电话exit 当发生错误时 立即结束程序 而不调用 C 应用程序中堆栈上对象的析构函数 应用程序设置了一些系统资源 这些资源在进程结束后不会自动被操作
  • 发送 TCP 请求并获得响应

    我尝试使用 TCP 请求发送一些字符串 我的服务器 ID 和端口是正确的 我搜索 TCP 请求并找到了一些示例或教程 这是我的来源 public class TcpClient public static final String SERV
  • postgres复制命令,二进制文件

    我正在使用 COPY 将字段从表复制到文件 该字段是一个压缩文本文件 因此我使用二进制副本 文件已创建 唯一的问题是 COPY 向文件添加了标头和尾部 这是我不需要的 这可以改变吗 是否有一个参数可以使 COPY 将字段与数据库中的字段完全
  • 如何在 Angular CLI 中更新 Angular 2

    如何更新 Angular 2 版本 我使用 Angular CLI 1 0 0 beta 20 4 并尝试了 npm update save 但它没有执行任何操作 下面是我目前的 package json 文件 感谢对此的任何帮助 name
  • 如何在黑莓手机中制作状态栏?

    我想在屏幕底部设置状态栏 它应该在左侧和右侧显示一个按钮 你可以在下面看到我的屏幕 我的代码是这样的 private void BottomLayout Bitmap topBg Bitmap getBitmapResource Image
  • 使用 iOS 版 OAuthConsumer 将图像上传到 tumblr

    我正在使用OAuth消费者 http code google com p oauthconsumer 在我的 iOS 应用程序中 它使用汤不热API http www tumblr com docs en api v2 posting 一般
  • paypal沙箱商户账户错误

    我有一个网站 我正在尝试使用 php 脚本将 paypal 连接到该网站 php 构建查询字符串然后提交到https www paypal com cgi bin webscr https www paypal com cgi bin we
  • Maui -- 如何使背景颜色透明?

    我正在尝试编写一个程序 该程序将用作另一个程序之上的覆盖 我希望文本 按钮和边框是实心的 背景是透明的
  • 如何向 Traefik 添加唯一的请求 ID 标头

    在Traefik中 是否可以为请求添加唯一的Request ID标头 我希望能够将访问日志与后端服务的日志关联起来 AFAIK 不支持它 但是 Traefik 2 3 6 中有一个功能解决方法 static config tracing W
  • 通过 FQL 识别来自 fb:comments 的垃圾邮件

    我正在运行 FQL 查询来获取网站上特定帖子的评论 有没有办法识别是否被标记为垃圾邮件 如果没有 我可以看到博客所有者删除了一些评论 以便它们在网站上不可见 是否有办法识别哪些内容已被博客所有者 隐藏 删除 Thanks 我正在使用 is
  • 如何使用 TypeScript 返回正确的 Promise

    所以我正在用 typescript 学习 Angular 2 我正在编写一个模拟服务 如果服务成功获取对象 它 我相信 应该返回一个 Promise 如果发生任何情况 则返回一个错误 我尝试过以下代码 但看起来它不是打字稿的编写语法 更新了
  • 指令中的 $watch 函数在 Angular JS 中没有被触发

    我是 Angular JS 的新手 一直在到处寻找为什么这不起作用的答案 我在这里有我的指令 directive carrouselPreview function return function scope element attrs s
  • 如何禁用表单身份验证

    我的网站中有一个文件夹 我使用基于表单的身份验证对其进行保护 我现在必须在该文件夹中开发两个新页面 并且我想在测试和调试新表单时关闭安全性 我已将网站 web config 文件中的身份验证模式更改为 mode None 并且已从安全文件夹
  • 嵌套溢出滚动隐藏的溢出不起作用

    我有一个 div 没有被剪切到父级的问题 即使它有overflow hidden 我已经浏览过overflow hiddenstackoverflow 上有问题 但大多数都有问题position或者似乎表明我的代码应该可以工作 这是一个MW