当前位置: 首页 > 面试题库 >

如何使flexbox在计算中包括填充?

欧渝
2023-03-14
问题内容

下面是两行。

  • 第一行 是的两个项目flex 1和的一个项目flex 2

  • 第二行 是中的两项flex 1

根据规范 1A + 1B = 2A

但是,当计算中包括 填充 时,总和是不正确的,如下面的示例所示。

如何使flex box在其计算中包括填充,以使示例中的box正确排列?

.Row{

  display:flex;

}

.Item{

  display:flex;

  flex:1;

  flex-direction:column;

  padding:0 10px 10px 0;

}

.Item > div{

  background:#7ae;

}

.Flx2{

  flex:2;

}


<div class="Row">

  <div class="Item">

    <div>1A</div>

  </div>

  <div class="Item">

    <div>1B</div>

  </div>

  <div class="Item Flx2">

    <div>1C</div>

  </div>

</div>



<div class="Row">

  <div class="Item">

    <div>2A</div>

  </div>

  <div class="Item">

    <div>2B</div>

  </div>

</div>

问题答案:

解决方案:

设置margin子元素,而不是在padding你的flex项目。

.Row{

  display:flex;

}

.Item{

  display:flex;

  flex:1;

  flex-direction:column;

}

.Item > div{

  background:#7ae;

  margin:0 10px 10px 0;

}

.Flx2{

  flex:2;

}


<div class="Row">

  <div class="Item">

    <div>1A</div>

  </div>

  <div class="Item">

    <div>1B</div>

  </div>

  <div class="Item Flx2">

    <div>1C</div>

  </div>

</div>



<div class="Row">

  <div class="Item">

    <div>2A</div>

  </div>

  <div class="Item">

    <div>2B</div>

  </div>

</div>

问题:

计算不使用padding。所以; 添加paddingflex元素并不能按照规范为您提供预期的宽度 。

例如,一个浮动的自动调整大小的伸缩容器中伸缩项目的可用空间为:

  • flex容器的包含块的宽度减去flex容器的边距,边框和水平尺寸中的填充
  • 垂直尺寸无限

为什么不计算填充?这就是规范想要的。

确定可用的maincross空间的flex项目。对于每个维度,如果flex container内容框的该维度是确定的尺寸,请使用该尺寸;如果flex container尺寸在minmax- content约束下确定,则该维度中的可用空间就是该约束;否则, 从该维度中可伸缩容器的可用空间中减去伸缩容器的边距,边框和边距,然后使用该值
这可能会导致无穷大的值。

如果从元素的大小中减去paddingmargin,则会得到:

1A + 1B = 2A

但是,执行完此操作后,将填充添加到元素中。元素越多,填充越多。宽度未计算出来,导致您的陈述为假。



 类似资料:
  • 问题内容: 假设我要计算项目中的代码行数。如果所有文件都在同一目录中,则可以执行: 但是,如果有子目录,则无法使用。为此,cat必须具有递归模式。我怀疑这可能是xargs的工作,但我想知道是否还有更优雅的解决方案? 问题答案: 首先,您不需要使用行数。这是一种称为猫的无用使用(UUoC)的反模式。要计算当前目录中文件的行数,请使用: 然后,该命令递归子目录: 是要从中开始搜索的顶层目录的名称 是您

  • 问题内容: 我需要计算两个日期之间的营业日。例如:我们7月4日放假。所以如果我的日期是date1 = 07/03/2012 date2 = 07/06/2012 由于7月4日为节假日,因此,这些日期的黑白工作日应该为1。 我有一种下面的方法来计算工作日,该工作日仅计算周末,而不计算假期。还有什么方法可以计算假期吗....请帮我。 问题答案: 假设您有一个包含所有假期的列表。 只需在您的条件中添加条

  • 问题内容: 我需要计算两个日期之间的天数(工作日),不包括周末(最重要)和假期 但是,我不知道该如何在MySQL中进行操作,我发现本文计算了两个日期之间的天数,不包括周末(仅MySQL)。我无法弄清楚如何在mysql中进行功能查询,能否提供一些有关如何使用mysql查询实现此功能的信息。如果我想念什么,请告诉我。 [编辑] 问题答案: 您可能要尝试以下操作: 计算工作日数(从此处获取) 这为您提供

  • 问题内容: 我有一个JTextArea,我为此设置了自动换行和自动换行的单词。我想将JTextArea“打包”到指定宽度的最小可能高度。 为此,我计划使用…计算字体的高度。 …然后将其乘以JTextArea中使用的行数。问题是JTextArea.getLineCount()计算返回的行数而忽略换行。 如何计算JTextArea中使用的行数,包括由自动换行引起的行数? 这里有一些演示代码,可以使解决

  • 问题内容: 我的应用程序中有一个响应式flexbox框,其中包含动态呈现的卡片(每个api调用呈现1-10张卡片)。除了包裹的方式外,它几乎可以完全满足我的要求。 假设我渲染了10张卡片,如果我调整屏幕大小,使其变成例如4-4-2,则最后2张卡片居中,我希望将其包裹起来,以便最后2张卡片从左侧开始并以相等的间距从上方开始。你该怎么做? 编辑以进一步说明:假设我将尺寸进一步调整为1-1-1-1-1-

  • 我对用Python创建一个包很感兴趣。为了做到这一点,我观看并阅读了几个教程,但总有一些东西不想工作。 我正在做的事 我创建了一个文件夹,其中有另一个文件夹,它对应于我的包的名称。 文件夹包含两个文件: -指明包所在位置的文件 -包含要包含到包中的函数的文件 在functions.py中有一个基本功能: 总结一下-我的文件结构如下 包含包含和。 我尝试使用加载包,然后使用,但我得到的消息是。似乎我