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

究竟什么是flex-basis属性集?

米夕
2023-03-14
问题内容

设置max-width或设置width为弹性项目而不是设置之间有区别flex-basis吗?

flex-grow/shrink属性的“转折点” 吗?

当我设置flex-wrap: wrap浏览器时,如何确定将项目下移到新行的哪一点?是根据他们的宽度还是“弹性基础”?

示例:最后两个框具有相同的功能flex-basis:200px,但是当窗口在300px至400px之间时, 只有 其中一个向下移动。为什么?


问题答案:

flex-basis允许您在计算其他任何内容之前指定元素的初始/开始大小。它可以是百分比或绝对值。

但是,它 不是 弯曲增长/收缩特性的起点。浏览器根据元素的初始大小是否超过横轴的宽度(常规意义上为宽度)来确定何时包装元素。

根据您的小提琴,最后一个移到窗口下方的原因是,父级的宽度已被先前的同级完全占据,并且当您允许内容换行时,无法容纳第一行的元素将变为推送到下一行。由于它flex- grow是一个非零值,它将简单地拉伸以填充第二行中剩余的所有空间。

如果您看小提琴,我已经修改了最后一项以具有新的尺寸声明:

.size3 {
  flex: 0 1 300px;
}

您将意识到该元素将按预期跨度300px。但是,当调整flex-grow属性使其值超过0时,它将拉伸以填充行,这是预期的行为。由于在_新行上下文_ 中没有可比较的同级,因此1到无穷大之间的整数将不会影响其大小。

因此,flex-grow可以看作是这样:

  • 0:(默认值) 请勿拉伸 。大小可以等于元素的内容宽度,也可以服从flex-basis
  • 1伸展
  • ≥2(整数 n ): Stretch 。例如,将是同一行上其他元素的大小的 nflex-grow: 1


 类似资料:
  • 问题内容: 关于此有很多问题和文章,但据我所知,尚无定论。我能找到的最好的总结是 flex-basis 允许您在计算其他任何内容之前指定元素的初始/开始大小。它可以是百分比或绝对值。 …本身并没有过多说明具有 flex-basis 设置的元素的行为。以我目前对flexbox的了解,我不明白为什么那也不能描述 宽度 。 我想知道 flex-basis 与实际 宽度 有何不同: 如果我用 flex-b

  • 问题内容: 我在jquery图像滑块演示中找到了reset.css文件,但它从未包含在主index.html文件中。应该做什么,更重要的是,您将它放在哪里?你把它之前 任何引用的样式表()? 这是reset.css内部的代码 问题答案: 最初,关于样式的工作方式还没有标准化,每个浏览器都实现了自己认为正确的方式。您在IE中看到太多有关样式错误的问题的原因之一是,因为IE是样式方面与其他浏览器最不相

  • 内部构造函数的准确定义是什么?在Julia-V0.6+中,“任何可以使用签名(注意部分)调用的构造函数都是内部构造函数”是正确的吗? 正如下面的注释中所讨论的,仅限于外部的构造函数实际上是吗? 使用检查方法是否是内部/外部构造函数是否正确? Julia自动定义的默认构造函数与用户显式定义的相应构造函数有什么不同? 顺便说一句,我知道如何使用以及何时使用内部构造函数。我知道什么是内部构造函数,直到只

  • 本文向大家介绍深入探究C++ string的内部究竟是什么样的,包括了深入探究C++ string的内部究竟是什么样的的使用技巧和注意事项,需要的朋友参考一下 在C语言中,有两种方式表示字符串: 一种是用字符数组来容纳字符串,例如char str[10] = "abc",这样的字符串是可读写的; 一种是使用字符串常量,例如char *str = "abc",这样的字符串只能读,不能写。 两种形式总

  • 问题内容: 我到处都是,找不到可靠的答案。根据文档,在以下情况下,Java引发java.lang.StackOverflowError错误: 由于应用程序递归过深而在堆栈溢出时抛出。 但这提出了两个问题: 不仅通过递归,还有其他方法可以使堆栈溢出吗? 是在JVM实际溢出堆栈之前还是之后发生StackOverflowError? 详细阐述第二个问题: 当Java引发StackOverflowErro

  • 问题内容: 我有一些代码来计算圆的属性: 它计算周长,但不计算其余部分。 问题答案: 是一个,也一个,这意味着不能在第二个打印语句中使用。试试那里。 回想一下,这是浮点数,而整数。在的文档中对此进行了概述(请参阅“ 格式化字符串语法”)。