百科狗-知识改变命运!
--

flex - 简写伸缩。flex-grow、flex-shrink、flex-basis - css 弹性盒子布局

乐乐1年前 (2023-11-21)阅读数 12#技术干货
文章标签它会

flex

版本:CSS3

CSS属性 flex 规定了弹性元素如何伸长或缩短以适应flex容器中的可用空间。这是一个简写属性,用来设置flex-grow,flex-shrinkflex-basis

示例

/* Basic values */
flex: auto;
flex: initial;
flex: none;
flex: 2;

/* One value, unitless number: flex-grow */
flex: 2;

/* One value, width/height: flex-basis */
flex: 10em;
flex: 30px;

/* Two values: flex-grow | flex-basis */
flex: 1 30px;

/* Two values: flex-grow | flex-shrink */
flex: 2 2;

/* Three values: flex-grow | flex-shrink | flex-basis */
flex: 2 2 10%;

/* Global values */
flex: inherit;
flex: initial;
flex: unset;

浏览器支持

IE11以上版本的浏览器都支持flex

语法

flex:none|[||

flex 属性可以指定1个,2个或3个值。

单值语法:值必须为以下其中之一:

  • 一个无单位数():它会被当作的值。
  • 一个有效的宽度(width)值:它会被当作的值。
  • 关键字noneautoinitial.

双值语法:

  • 第一个值必须为一个无单位数,并且它会被当作的值。
  • 第二个值必须为以下之一:
    • 一个无单位数:它会被当作的值。
    • 一个有效的宽度值:它会被当作的值。

flex - 简写伸缩。flex-grow、flex-shrink、flex-basis - css 弹性盒子布局

三值语法:

  • 第一个值必须为一个无单位数,并且它会被当作的值。
  • 第二个值必须为一个无单位数,并且它会被当作的值。
  • 第三个值必须为一个有效的宽度值,并且它会被当作的值。

取值

  • initial:元素会根据自身宽高设置尺寸。它会缩短自身以适应 flex 容器,但不会伸长并吸收 flex 容器中的额外自由空间来适应 flex 容器。相当于将属性设置为flex: 0 1 auto
  • auto:元素会根据自身的宽度与高度来确定尺寸,但是会伸长并吸收 flex 容器中额外的自由空间,也会缩短自身来适应 flex 容器。这相当于将属性设置为flex: 1 1 auto.
  • none:元素会根据自身宽高来设置尺寸。它是完全非弹性的:既不会缩短,也不会伸长来适应 flex 容器。相当于将属性设置为flex: 0 0 auto
  • :定义 flex 元素的flex-grow属性,详见。默认值为0,负值无效。
  • :定义 flex 元素的flex-shrink属性,详见。默认值为1,负值无效。
  • :定义 flex 元素的flex-basis属性。若值为0,则必须加上单位,以免被视作伸缩性。默认值为auto

实例

flex: 1;
flex: 2;
flex: 1 30px;
flex: 1 1 100px;

大多数情况下,开发者需要将 flex 设置为 auto,initial,none,或一个无单位正数。默认情况下,元素不会缩短至小于内容框尺寸,若想改变这一状况,请设置元素的min-widthmin-height属性。

#flex-container {
  display: flex;
  flex-direction: row;
}

#flex-container > .flex-item {
  flex: auto;
}

#flex-container > .raw-item {
  width: 5rem;
} 
Flex box (click to toggle raw box)
Raw box

鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com

免责声明:我们致力于保护作者版权,注重分享,当前被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!邮箱:344225443@qq.com)

图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)