为什么百分比填充/边距在 Firefox 和 Edge 中的 Flex 项目上不起​​作用?

2023-11-23

我想在弹性盒内有一个方形 div。所以我用:

.outer {
  display: flex;
  width: 100%;
  background: blue;
}
.inner {
  width: 50%;
  background: yellow;
  padding-bottom: 50%;
}
<div class="outer">
  <div class="inner">
    <a>hehe</a>
  </div>
</div>

这在 Chrome 中运行良好。但在 Firefox 中,父级压缩到只有一行。

我该如何在 Firefox 中解决这个问题?我用的是44版本。

您还可以在以下位置查看代码https://jsbin.com/lakoxi/edit?html,css


2018年更新

Flexbox 规范已更新。

4.2. Flex 项目边距和填充

弹性项目上的边距和填充百分比,就像块上的百分比 盒子,根据其包含块的内联大小进行解析, 例如左/右/上/下百分比全部解析为反对他们的 包含水平写入模式下块的宽度。


原始答案 - 适用于 2018 年之前发布的 FF 和 Edge 版本

来自弹性盒规格:

作者应该完全避免在弹性项目的填充或边距中使用百分比,因为它们在不同的浏览器中会得到不同的行为。

这里还有一些:

4.2. Flex 项目边距和填充

弹性项目上的百分比边距和填充可以根据以下任一方法来解决:

  • 他们自己的轴(左/右百分比根据宽度解析,顶部/底部根据高度解析),或者,
  • 内联轴(左/右/上/下百分比均根据宽度解析)

用户代理必须选择这两种行为之一。

注意:这种差异很糟糕,但它准确地反映了世界的当前状态(实现之间没有达成共识,CSSWG 内部也没有达成共识)。 CSSWG 的目的是让浏览器集中于其中一种行为,届时规范将被修改。

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

为什么百分比填充/边距在 Firefox 和 Edge 中的 Flex 项目上不起​​作用? 的相关文章

  • 两个 div 之间的垂直线间隔

    所以我有两个div 一个左侧 div 包含导航链接 另一个右侧 div 填充内容 具体取决于您在左侧单击的链接 我希望在导航和内容之间有一条垂直的灰线将两者分开 但我需要它根据右侧内容 div 的长度来改变高度 如果右侧没有导航那么长 则默
  • AngularJS动画卡片翻转

    我正在尝试使用新的 AngularJS 方式在页面转换之间制作动画 并希望合并卡片翻转 例如http jsfiddle net nicooprat GDdtS http jsfiddle net nicooprat GDdtS body b
  • 为什么 Chrome 80 会导致这个 grid-template-rows: auto 问题

    有人知道最新的 Chrome 80 更新有什么变化吗 似乎 grid template rows auto 即使标记中不存在给定行 从现在开始也会占用一些空间 仅发生在 Chrome 80 上 l page display grid gri
  • HTML5 Canvas - 在画布上绘图、保存上下文并稍后恢复

    要求 现在 在画布上绘制 然后点击 保存 存储画布状态 离线绘制 但不作为图像 稍后 打开画布并显示之前保存的绘图 然后继续再次绘制 对于绘图 我们通常使用如下代码 canvas document getElementById can ct
  • Jekyll 液体变量作为内联 CSS 值

    将液体变量作为内联样式传递通常会令人皱眉吗 这是我的标记的示例 div class span 8 12 h6 page role h6 h1 style color 000000 page title h1 div
  • Chrome - 儿童剪辑CSS3圆形边框?

    请参阅以下 JSFiddle http jsfiddle net zScKW http jsfiddle net zScKW 请注意 子 div 剪裁了其父 div 的边框 如果我删除边框 但保留圆角 该项目将按照我们的预期进行剪辑 Fir
  • 我如何在ajax应用程序中找到未使用的css?

    我一直在搜索 但找不到任何 ff 插件或 javascript 来查找 ajax 应用程序中未使用的 css 除尘选择器 http www sitepoint com dustmeselectors 可以进行网站抓取 但我正在寻找检查加载内
  • CSS 粘性位置在移动设备上无法正常工作

    我的 OpenCart 2 3 0 2 网站上有一个带有粘性购物车按钮的按钮 这个想法是只有一个页面可以订购 只有几个三明治 不需要类别和产品页面 所以我添加了一个位于页面右上角的购物车按钮 cart position fixed top
  • 重复背景图像被切断

    我有一个容器 DIV 它随着内容的高度而缩放 它有一个背景图像 可以重复向下形成图案 问题是重复的背景图像在 div 底部被切断 有没有办法让背景图像不被切断 这是代码 http jsfiddle net WkEKD 7 http jsfi
  • 网页CSS覆盖ckeditor 3样式

    我有一个加载 screen css 的页面 其中包含evil规则 由于各种原因我无法删除或修改 a background red important I use CK编辑器3 x http ckeditor com 在同一页面上 问题是 无
  • style = "position:absolute" 和 style = "position:relative" 之间的区别

    谁能告诉我两者之间的区别style position absolute and style position relative 如果我将其添加到 它们有何不同div span input元素 我在用absolute现在 但我想探索relat
  • HTML 电子邮件中的边距有什么替代方案?

    Hotmail 不支持 HTML 电子邮件中的边距 还有其他选择吗 我建议使用表格并调整列的宽度 HTML 电子邮件有时搭配表格效果更好 此外 您还可以查看收件箱中的一封电子邮件 该电子邮件可以执行您想要的操作并检查源代码 由于这个答案似乎
  • CSS水平导航间距

    我正在尝试用 css 创建一个水平导航栏 其中包含 5 个均匀间隔的链接 html 希望保持这样 div ul li a href one html One a li li a href two html Two a li li a hre
  • onclick链接/按钮获取数据属性值

    span class btn btn block btn inverse btn icon glyphicons home i i Daily span span class btn btn block btn inverse btn ic
  • 链接index.html client.js 和 server.js

    我从 Node js 开始 我的第一个程序已经遇到了问题 下面是我正在使用的代码 索引 html
  • 带搜索框的 D3 图表

    我在 D3 中创建了一个图表 其中节点显示特定个人创建文档的时间 该图表还显示了一个搜索框 该搜索框根据搜索框输入是否与与该文档关联的单词匹配而将节点变成红色 这些单词列在数据集的第 5 列中 请参阅下面的数据集 我的问题 一旦将搜索输入到
  • Twitter Bootstrap:按钮下拉列表中的图标

    Here http jsfiddle net DjHyQ 是 jsfiddle 上的链接 其中包含一些演示 它在 Chrome 甚至 IE 中运行良好 但在 FF 中图标会下降 我怎样才能解决这个问题而不用负边距或类似的东西来提升它们 我不
  • Bootstrap 多选限制问题

    我使用创建了一个多选下拉列表引导多选 http davidstutz github io bootstrap multiselect 我需要在选项选择中设置一个限制 这里我将其设置为 5 如果达到限制 我只需禁用其他选择选项 它就可以完美工
  • 将 html

    我有一些服务器端代码当前支持 http 字节范围请求 没有任何问题 但是 我希望能够在将转码后的块发送到客户端之前使用 ffmpeg 即时转码视频文件 位于磁盘上 但 ffmpeg 要求我在获取字节时给它一个寻道时间范围来自客户 给定客户端
  • 使用 HTML 标签作为背景图像而不是 CSS background-image 属性?

    我需要使用 html img 标签作为背景图像 div 然后我将放置一个 p 的内容 我已经尝试过 但似乎无法让它们正确显示 我使用了相对位置 负值的边距 任何建议或指出我正确的方向将不胜感激 p div img src http www

随机推荐

  • 存储过程中的经典 ADO 和表值参数

    是否有某种方法可以通过经典 ADO 将表值参数传递给 SQL Server 中的存储过程 经典 ADO 是 COM 和 OLE SQL Native Client 支持 OleDB 上的表值参数 请参阅表值参数 OLE DB 人们必须亲自动
  • spring boot jpa + redis LazyInitializationException

    我使用 spring boot 2 1 2 和 redis 作为缓存提供程序 但现在 我有一个问题 在 sysUser 实体中 Data Entity Table name sys user ToString exclude roles E
  • /accounts/signup/ 处出现 SMTPDataError(553,b'不允许以 webmaster@localhost 进行中继')

    我正在使用 Django 1 7 为了进行身份验证 我使用 Django allauth 为了发送电子邮件 我开始使用 zoho smtp 服务器 它能够发送普通邮件和交易邮件 但无法发送注册会话电子邮件 它显示错误 SMTPDataErr
  • 线程“主”java.lang.NoClassDefFoundError 中出现异常:

    以下程序抛出错误 public class HelloWorld public static void main String args System out println Hello World CLASSPATH C Program
  • AS3 合并多个数组的最快方法

    我正在尝试编写一个可以指定任意数量的数组的函数 并且返回值将是一个包含所有指定数组的内容的数组 我已经这样做了 但这似乎是一种非常缓慢且丑陋的方法 var ar1 Array 1 2 3 4 5 6 7 8 9 var ar2 Array
  • 如何截断 STDIN 行长度?

    我一直在解析一些日志文件 发现有些行太长 无法在一行上显示 因此 Terminal app 善意地将它们包装到下一行 但是 我一直在寻找一种在一定数量的字符之后截断一行的方法 以便终端不会换行 从而更容易发现模式 我编写了一个小的 Perl
  • mysql - 多少列太多?

    我正在设置一个可能有 70 列以上的表 我现在正在考虑将其拆分 因为每次访问表时都不需要列中的某些数据 话又说回来 如果我这样做 我就不得不使用联接 在什么时候 如果有的话 被认为列太多 一旦超过了就被认为太多了数据库支持的最大限制 事实上
  • SVG 中的下标和上标

    我正在尝试使用以下代码使用 SVG 显示下标和上标从这个网站
  • Oracle 将列移动到第一个位置

    有没有办法将 Oracle 表中的列从最后一个位置移动到第一个位置 有人删除了 ID 列并重新创建了它 所以现在它到了最后 这是一个问题 因为我们的一些 PHP 脚本使用第一列作为标识符 一个抽象模型以及超过 100 个其他模型使用这个基础
  • 如何在 Google Colaboratory 中以编程方式清除 Python 输出?

    这个问题特定于 Google Colaboratory 虽然某些解决方案可能在普通的 Python 解释器中工作 但 Google Colaboratory 似乎不允许我以编程方式清除 Python 解释器输出 我已经尝试过但不起作用的解决
  • 再次迭代元组...

    我从事 C 工作已经有一段时间了 但我对模板并不熟悉 最近 我尝试编写一个类来包装std vector
  • 进行 json.dump 时如何显式设置回车符?

    我的 python 脚本生成 json 文件 我必须支持这个Python文件在Windows和Linux上工作 问题是windows和linux上的回车符不同 当我在 Windows 上运行此代码时 它输出 CRLF json 当我在 Li
  • Flutter找不到android sdk

    我刚刚尝试安装 flutter 因为我已经安装了 android studio 和 android sdk 所以我只是按照 flutter 的安装进行操作 这是我的问题 当我跑步时 flutter doctor 它告诉我 Flutter C
  • 在 MVC 中处理多个角色 - 基于操作的辅助功能

    我目前有一个项目 我似乎遇到了有关角色的问题 我想我会得到一些关于如何最好地处理该问题的意见 系统将需要可编辑 灵活的角色 不仅控制特定区域的访问 还控制系统功能的使用 添加用户 编辑用户 查看报告等 系统当前允许用户拥有多个角色 每个角色
  • 黑莓 URL 编码器

    我需要在 Blackberry 中使用 HTTP GET 请求对 URL 进行编码 任何人都可以帮助我找到如何实现这一目标 为什么不使用 RIMURL编码的帖子数据 private String encodeUrl String hsURL
  • 如何在TextureView上使用相机预览录制视频

    我一直在一些 Android 4 0 设备上使用TextureView 例如 我尝试开发一个简单的应用程序 它可以录制视频并使用TextureView进行预览 然而 据我阅读Android API文档 标准MediaRecorder需要一定
  • 编织错误。未找到对象

    我有一个未清理的dataset 所以 我已将其导入到我的 R 工作室 然后当我运行时nrow adult 在 rmarkdown 文件中并按ctrl Enter它有效 但是当我按下knit出现以下错误 Answer recommended
  • 处理 DateTime DBNull

    我在 SO 上看到过很多很多版本 但似乎没有一个能完全满足我的需求 我的数据来自供应商数据库 该数据库允许日期时间字段为空 首先 我将数据放入数据表中 using SqlCommand cmd new SqlCommand sb ToStr
  • 使用 vba 将格式化文本复制到 access 中

    我需要将 Word 中的格式化文本保存到 Access 数据库中 到目前为止 我已经设法弄清楚如何在访问字段中存储格式化文本 在表中创建备注字段并将文本格式设置为富文本 搜索SO我还没有找到关于如何将所述文本从word传输到Access的解
  • 为什么百分比填充/边距在 Firefox 和 Edge 中的 Flex 项目上不起​​作用?

    我想在弹性盒内有一个方形 div 所以我用 outer display flex width 100 background blue inner width 50 background yellow padding bottom 50 di