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

在什么情况下将flex-shrink应用于flex元素,它如何工作?

卫焕
2023-03-14
问题内容

我玩过这个漂亮的CSS Flexbox演示页面,并且了解大多数概念,但是flex- shrink在工作中看不到。无论我在此处应用什么设置,在页面上都看不到差异。

从规格:

<’灵活成长’>

组件设置’flex-
grow’的长度,并指定flex增长因子,该因子决定了当分配正的自由空间时,flex项目相对于flex容器中其余的flex项目将增长多少。省略时,它设置为“
1”。

<’伸缩收缩’>

该组件设置’flex-
shrink’的长度,并指定flex收缩因子,该因子确定在分配负的自由空间时,flex项相对于flex容器中其余的flex项目将收缩多少。省略时,它设置为“
1”。当分配负空间时,可伸缩系数乘以可伸缩基础。

在什么情况下flex- shrink可以使用(即,当负数空间分布时)?我尝试过在flexbox元素上设置宽度和其中的元素的(min-)widths设置自定义页面以引起溢出,但似乎不是所描述的情况。

完全支持吗?

作为解决方案,将高度赞赏链接演示中的一组选项或类似JSFiddle的实时演示。


问题答案:

为了能看到flex-shrink实际效果,您需要使其容器更小。

HTML:

<div class="container">
  <div class="child one">
    Child One
  </div>

  <div class="child two">
    Child Two
  </div>
</div>

CSS:

div {
  border: 1px solid;
}

.container {
  display: flex;
}

.child.one {
  flex: 1 1 10em;
  color: green;
}

.child.two {
  flex: 2 2 10em;
  color: purple;
}

在此示例中,两个子元素理想情况下都希望为10em宽。如果父元素的宽度大于20em,则第二个孩子将剩余的空间是第一个孩子的两倍,使其显得更大。如果父元素的宽度小于20em,则第二个孩子的剃除量将是第一个孩子的两倍,使其看起来更小。

当前的flexbox支持:Opera(无前缀),Chrome(有前缀),IE10(有前缀,但使用略有不同的属性名称/值)。Firefox当前使用的是2009年的旧规范(带前缀),但新规范应在实验版本中立即可用(无前缀)。



 类似资料:
  • demo: https://jsfiddle.net/uxc68jop/ 同样的代码在demo中没有问题,在项目中第一个元素width就失效了?

  • 问题内容: 对于Google而言,这是不可能的,因为每个谈论和伪元素的文章似乎都使用“内容”一词。 我在这篇CSS-Tricks文章中听说过它,解释了如何实现图像滑块作为Web组件的示例用例。因此,它出现在内部的代码示例为: CSS HTML 似乎是指该标签,该标签用于允许用户包括Web组件,但我希望对此有更深入的了解。 编辑: 在进一步阅读之后,在上述文章中,我找到了作者的“ Shadow DO

  • 本文向大家介绍flex与其他有什么不同,用它有什么好处?相关面试题,主要包含被问及flex与其他有什么不同,用它有什么好处?时的应答技巧和注意事项,需要的朋友参考一下 flex 从根本上不同于之前常用的借助 定位、浮动 的布局。从逻辑思路上来说,flex 布局具有宏观性,提供了一种对于页面中元素如何排布的框架,开发者不需要关注细节和进行额外的操作,就能使得一系列元素按约定的规则排列。而之前常用的借

  • 本文向大家介绍在什么情况下选择webpack?在什么情况下选择rollup?相关面试题,主要包含被问及在什么情况下选择webpack?在什么情况下选择rollup?时的应答技巧和注意事项,需要的朋友参考一下 非要一句话区分的话 如果是用,如果是用其实界限并不是特别明显。在某些特殊情况下可以互用

  • 介绍 (Introduction) UIComponent类是所有可视组件的基类,包括交互式和非交互式。 Class 声明 (Class Declaration) 以下是mx.core.UIComponent类的声明 - public class UIComponent extends FlexSprite implements IAutomationObject, IChild

  • flex-direction属性用于指定需要放置flex容器(flex-items)元素的方向。 usage - flex-direction: row | row-reverse | column | column-reverse 此属性接受四个值 - row - 从左到右水平排列容器的元素。 row-reverse - 从右到左水平排列容器的元素。 column - 从左到右垂直排列容器的元