在 ICE 上指定最大高度的 Flexbox 子溢出父级

2024-01-09

我有一个父元素,其中包含两个子元素,这两个子元素使用 Flexbox 显示在彼此的顶部。该父元素的 max-height 属性设置为某个值。因此,只要内容很短,父元素就应该保持很小,并且随着内容的增长,父元素也随之增长,直到达到其最大高度。此时我们应该在内容元素上看到滚动条。

#container {
  display: flex;
  max-width: 80vw;
  max-height: 100px;
  flex-direction: column;
}

#content {
  overflow-y: auto;
}

/* styling - ignore */
#container {
  border: 2px solid black;
  margin-bottom: 1em;
}
#header {
  background-color: rgb(245, 245, 245);
  padding: 10px;
}
#content {
  background-color: rgb(255, 255, 255);
  padding: 0 10px;
}
<div id="container">
  <div id="header">Header</div>
  <div id="content">
    <p>Everything works as supposed to, move along</p>
  </div>
</div>

<div id="container">
  <div id="header">Header</div>
  <div id="content">
    <p>Very long content</p>
    <p>Very long content</p>
    <p>Very long content</p>
    <p>Very long content</p>
  </div>
</div>

这在 Firefox 和 Chrome 上完美运行。在 Internet Explorer 上,虽然内容元素中的滚动条不显示;相反,内容元素会从父元素溢出。

我尝试过使用 flex-basis 和其他 Flexbox 属性,在谷歌上搜索了很多,但没有任何运气。


我多次尝试解决这个问题,但所有 css 解决方案似乎都无法在 IE 11 中工作。 特别是如果您想保持可变高度直到达到最大高度然后显示滚动条。 (你只需设置固定高度(不是以%为单位)即可使滚动条在 IE 中工作)

所以我使用了仅为 IE 启动的 javascript 函数

Vanilla:

const cont = document.getElementById('container');

if (cont && cont.cildren){
  const child = cont.children;
  const maxH = cont.offsetHeight - child[0].offsetHeight;

  if (maxH < child[1].offsetHeight){
    child[1].style.height = maxH + 'px';
  }
}

或 jQuery(如果您仍在使用它):

const cont = $('#container');
const header = cont.find('.header');
const scrollCont = cont.find('.scrollContainer');
const maxH = cont.outerHeight() - header.outerHeight();

if (maxH < scrollCont.outerHeight()){
  scrollCont.height(maxH);
}

在大多数情况下,我会尽我所能避免在类似情况下使用 javascript ...但是,该死的 IE!

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

在 ICE 上指定最大高度的 Flexbox 子溢出父级 的相关文章

  • Bootstrap 导航栏与 Google 位置重叠自动完成下拉菜单

    我有一个导航栏 我试图在其中添加一个地点搜索框 除了谷歌位置提示框的一小部分被导航栏重叠 如下图所示 之外 一切几乎都有效 我尝试过改变z index输入框的值改为10或2000或90000但似乎没有效果 我还缺少其他需要做的事情吗 这是
  • ng-include 和 ng-view 不同时加载

    下面是我的应用程序的结构 很简单 页眉和页脚是非常小的文件 而主页上的 ng view 要大得多 当我进入该页面时 我注意到了这一点 首先加载两个 ng include 然后 ng view 出现 页脚被推到底部 页脚闪烁大约 0 1 秒
  • 为什么使用 iPhone 或 iOS 设备在“iframe”中查看“position:fixed”时不起作用?

    我研究过 stackoverflow 似乎position fixed在 iOS 移动设备的 iframe 中 https stackoverflow com questions 15874910 position fixed and if
  • 使用“表单控件”删除输入字段的轮廓

    我有一个输入字段 如下所示 在类名中我将其作为form control
  • 是否可以设置输入文本值的样式?

    我想知道是否可以设置输入框值的样式 such http jsfiddle net aCwhY as
  • Bootstrap Affix Nav 导致下面的 Div 向上跳转

    我使用 Bootstrap 的 Affix 函数创建了一个 JSFiddle 以便在向下滚动并且标题移出视图时使导航保持在屏幕顶部 我遇到的问题是 当使用纯 HTML 时 导航下方的文本会过早地跳起来并隐藏在导航后面 查看有问题的代码her
  • LESS CSS 语法对现代化很有用

    通常我使用现代化 http modernizr com 了解浏览器的功能 同时 我用LESS CSS http lesscss org 使我的CSS更具可读性和可维护性 使用 LESS 嵌套规则的常见样式如下所示 header color
  • 编辑类名中带有空格的元素的 css 样式

    我正在创建一个 tumblr 我必须编写一个外部 CSS 文件 但我在编辑 post 元素的 css 样式时遇到问题 这是它的结构 li class post quote other code li 问题是类名中有空格 我如何创建一个 CS
  • 如何将 div 与其父级的顶部对齐,但保持其内联块行为?

    See http jsfiddle net b2BpB 1 http jsfiddle net b2BpB 1 问 如何让box1和box3对齐到父div的顶部boxContainer boxContainerContainer backg
  • 如何防止弹性项目高度因其内容而溢出[重复]

    这个问题在这里已经有答案了 我刚刚开始学习 Flex 到目前为止我印象深刻 但是 我对包含页眉 页脚和三列的全页应用程序遇到了问题 第一列包含一个项目列表 由于我无法为其父级设置固定高度 因此每次列表增长时 它都会将页脚向下推 这是一个带有
  • 使用 VBA 通过 Access 导航网页/操作 IE

    你好 StackOverflow 社区 我有一个关于使用 Access VBA 操作 IE 的问题 本质上 我正在尝试编写代码 使用 IE 打开特定网页 在该页面中搜索特定链接 目标链接的名称将取决于用户的情况 通过以编程方式单击该链接导航
  • 我的 CSS 未在 Internet Explorer 11 和 Firefox 中加载!仅适用于 Chrome

    我正在创建一个简单的网页 我的 CSS 只能在 Chrome 中使用 它在 Firefox 和 IE11 中都不起作用 这是我的 HTML h1 b u Adding a new Visitor u b h1 br div class wr
  • 动态表单标签宽度的 CSS

    我目前正在重构我们的表单控制器之一 以便我们可以将其用于面向公众的网站 目前它正在为表单生成表格布局 但我正在尝试使用 CSS 表单来完成它 我正在尝试重现看起来像这样的东西http www stylephreak com uploads
  • 使用 CSS 自定义字体?

    我见过一些在其网站上使用自定义字体的新网站 除了常规的 Arial Tahoma 等 他们支持大量的浏览器 如何做到这一点 同时 如果可能的话 还会阻止人们免费下载该字体 一般来说 您可以使用自定义字体 font face在你的 CSS 中
  • CSS设置默认滚动位置

    有没有办法将滚动位置设置为默认值 我知道如何在 javascript 中做到这一点 例如使用 jquery div divWithScroll attr scrollTop 200 但我只想用CSS来做 我不知道是否可行 不 CSS 中没有
  • Textmate“注释”命令对于 css 代码无法正常工作

    当我在 TextMate 中切换 CSS 源代码的注释时遇到一些问题 Using the shortcut CMD I activate the Comment Line Selection command from the source
  • 按百分比设置 bootstrap 模态身高

    我正在尝试制作一个带有主体的模态 当内容变得太大时 该主体会滚动 但是 我希望模式能够响应屏幕尺寸 当我将最大高度设置为 40 时 它没有任何效果 但是 如果我将最大高度设置为 400px 它会按预期工作 但不会响应 我确信我只是错过了一些
  • 我可以停止 :hover 应用于元素吗?

    假设我有一些 CSS button hover font weight bold 我怎样才能防止 hover随意应用样式 我的目标用例是当元素被禁用时 例如 使用这个 HTML
  • HTML 默认图像大小

    我在我的代码上显示 3 张图片 图片具有不同的尺寸 宽度和高度 div class row div class col lg 12 h2 class page header Gallery h2 div div class col md 4
  • 闪亮井板宽度

    library shiny library shinydashboard ui lt dashboardPage dashboardHeader dashboardSidebar dashboardBody wellPanel tags d

随机推荐

  • 如何使用 Java 计算 Selenium WebDriver 中的 HTML 子标签数量

    在 Selenium JAVA WebDriver 中 如何计算子标签 例子 div class subcategory container div class products container div class product ro
  • MongoDB - 多对多关系?

    我很好奇如何构建一个具有多对多关系 可能有数万条记录的 MongoDB 假设您有一个餐厅数据库 可以跟踪大量餐厅以及所有入住过这些餐厅的人 因此 用户可能想要查找一个人并查看他们已签到的所有餐厅 而且还想查找一家餐厅并查看所有已签到的人 如
  • “react-native弹出”:无法识别的命令“弹出”

    我正在尝试为我的反应本机项目重新创建 ios 和 android 文件夹 据我所知 这是通过以下命令完成的 react native eject 但我收到错误 error Unrecognized command eject 我做错了什么吗
  • 从 ItemDataBound 事件中的转发器控件获取值

    如何在 ItemDataBound 事件中获取转发器控件的值 我写了下面的asp代码
  • 处理推文时使用 JSON 或正则表达式

    哪种方法更快 使用 JSON 解析器 python 2 6 或正则表达式来获取相关数据 由于数据量巨大 我认为使用一种方法与其他方法相比在时间上会有很大差异 假设你在问什么 我相信您会问 通过反序列化序列化 JSON 字符串或通过正则表达式
  • 返回 R 中别名系数的 VIF

    我想知道是否有人可以帮助我解决以下问题 当我在各种解释变量之间进行 VIF 分析时 会出现以下错误消息 test lt vif lm Spring Autumn Oct Nov Dec Jan Feb Mar Apr May Jun Jul
  • 重写 HashSet 的 Contains 方法

    有人能告诉我如何重写 HashSet 的 contains 方法以使用正则表达式匹配而不是仅使用 equals 吗 或者 如果不覆盖 我如何添加一个方法来使用正则表达式模式 基本上 我希望能够在包含字符串的 HashSet 上运行正则表达式
  • C# - 使用 HTMLAgilityPack 获取 JavaScript 变量值

    我目前有 2 个 JavaScript 变量 需要从中检索值 HTML 由一系列没有 id name 属性的嵌套 DIV 组成 是否可以使用 HTMLAgilityPack 从这些变量中检索数据 如果是这样 我将如何去做 如果不是需要什么
  • 如何在magento中添加密件抄送或抄送

    我不知道如何在以下编码中添加抄送或密件抄送 我尝试了密件抄送 但邮件无法发送 请有人帮忙 代码是 data array name gt username to user id gt to userid email gt email tele
  • 在 MyEclipse 中开发 Maven 战争应用程序值得吗?

    我的组织已做出上层决定 将 Maven 作为 Java 项目的标准构建工具 我的任务是帮助我们的本地团队将项目迁移到 Maven MyEclipse IDE 是正在发挥作用的核心工具之一 MyEclipse 似乎与 Maven 团队有着一段
  • 蟒蛇熊猫。日期对象由单独的列分割。

    我在Python pandas 中将日期写为 1 31 2010 为了应用线性回归 我想要 3 个单独的变量 天数 月数 年数 将 pandas 中包含日期的列分成 3 列的方法是什么 另一个问题是将天数相同但分为 3 组 1 10 11
  • 当测试一起运行时,所有测试中使用的外部库模拟补丁不起作用

    我正在使用 Python 的模拟库和单元测试 我正在为一个类编写单元测试 该类在其方法之一中使用外部库的函数 根据情况 该函数返回不同的值 假设我想测试 A 类 from external library import function f
  • Ubuntu 服务器上的 PHP PDO 到 MS SQL Server

    我正在尝试使用 PDO 连接到 MS SQL Server 我尝试过使用这个 db new PDO sqlsrv server server database databaseName username password 我读到不再支持 s
  • 如何将 jQuery 对象转换为字符串?

    如何将 jQuery 对象转换为字符串 我假设您需要完整的 HTML 字符串 如果是这样的话 类似这样的事情就可以解决问题 div append item of interest clone html 这有更深入的解释here http j
  • 为Excel饼图添加数据标签

    我正在绘制带有一些数据的饼图 private void DrawFractionChart Excel Worksheet activeSheet Excel ChartObjects xlCharts Excel Range xRange
  • java android - 如何将资源中的html设置为TextView?

    是否有可能将 html 从 res raw 加载到 TextView 中 我知道我可以使用 WebView 但是该死的透明度并不总是有效 并非在每个设备上 myTextView setText Html fromHtml readTxt 此
  • 开源的基于规则的模式匹配/信息提取框架? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在购买一个开源框架 用于编写自然语言语法规则 以通过注释进行模式匹配 您可以将其视为正则表达式 但
  • Docker Compose 复制一个文件夹,但不复制另一个文件夹

    我还在学习 Docker 这种情况让我很困惑 Docker 会将一个文件夹复制到映像 容器 但它会跳过另一个文件夹 我不明白为什么 Docker 桌面 4 X Ubuntu Linux 容器 NET 5 0 Blazor 应用程序 因此在应
  • 使用 Java 对所有字段进行 MongoDB 文本索引

    我想在 MongoDB 中的所有字段上创建文本索引 我知道可以这样做 db collection ensureIndex text name TextIndex 但我想在我的 Java 程序中创建这个索引 我尝试过这个 collection
  • 在 ICE 上指定最大高度的 Flexbox 子溢出父级

    我有一个父元素 其中包含两个子元素 这两个子元素使用 Flexbox 显示在彼此的顶部 该父元素的 max height 属性设置为某个值 因此 只要内容很短 父元素就应该保持很小 并且随着内容的增长 父元素也随之增长 直到达到其最大高度