flex 属性是css的一个简写属性,用于设置或检索弹性盒模型对象的子元素如何分配空间。如果元素不是弹性盒模型对象的子元素,则 flex 属性不起作用。

css flex属性怎么用?
flex 属性用于设置或检索弹性盒模型对象的子元素如何分配空间。
说明:flex 属性是 flex-grow、flex-shrink 和 flex-basis 属性的简写属性。
立即学习“前端免费学习笔记(深入)”;
CSS 语法
flex: flex-grow flex-shrink flex-basis|auto|initial|inherit;
属性值:
● flex-grow:一个数字,规定项目将相对于其他灵活的项目进行扩展的量。
● flex-shrink:一个数字,规定项目将相对于其他灵活的项目进行收缩的量。
● flex-basis:项目的长度。合法值:"auto"、"inherit" 或一个后跟 "%"、"px"、"em" 或任何其他长度单位的数字。
● auto:元素会根据自身的宽度与高度来确定尺寸,但是会自行伸长以吸收flex容器中额外的自由空间,也会缩短至自身最小尺寸以适应容器。这相当于将属性设置为 "flex: 1 1 auto".
在整本书中我们所涉及许多的Flex框架源码,但为了简洁,我们不总是显示所指的代码。当你阅读这本书时,要求你打开Flex Builder,或能够访问Flex3框架的源码,跟随着我们所讨论源码是怎么工作及为什么这样做。 如果你跟着阅读源码,请注意,我们经常跳过功能或者具体的代码,以便我们可以对应当前的主题。这样能防止我们远离当前的主题,主要是讲解代码的微妙之处。这并不是说那些代码的作用不重要,而是那些代码处理特别的案例,防止潜在的错误或在生命周期的后面来处理,只是我们当前没有讨论它。有需要的朋友可以下载看看
● none:元素会根据自身宽高来设置尺寸。它是完全非弹性的,既不会缩短,也不会伸长来适应flex容器。相当于将属性设置为"flex: 0 0 auto"。
● initial 设置该属性为它的默认值,即为"flex: 0 1 auto"。
● inherit 从父元素继承该属性。
注意:如果元素不是弹性盒模型对象的子元素,则 flex 属性不起作用。
css flex属性 示例
红色蓝色带有更多内容的绿色 div注意: Internet Explorer 9 及更早版本不支持 flex 属性。
注意: Internet Explorer 10 通过 -ms-flex 属性来支持。 IE11 及更新版本完全支持 flex 属性 (不需要 -ms- 前缀)。
注意: Safari 6.1 (及更新浏览器) 通过 -webkit-flex 属性支持。
效果图:









