flex:0是什么意思,flex:0在IE11遇到的问题
flex:0表示什么意思
flex: 0等同于flex: 0 1 0%,也等同于{flex-grow: 0;flex-shrink: 1;flex-basis: 0%;}。
flex 元素如何根据其在 flex 容器中的所剩空间来动态拉伸或收缩,它是 flex-grow 、 flex-shrink 、 flex-basis 这三个属性的简化版。
单值为number时代表**flex: number 1 0**。
双值时第一个number会被当成 flex-grow 属性,第二个number会被解释为 flex-shrink 属性,第二个参数若是一个能够描述 宽度 的值,例如 10em 、30% 、min-content,会被解释为 flex-basis 属性。
三值时则分别代表 flex-grow、flex-shrink、flex-basis。
flex 各属性含义
flex-grow代表元素在flex盒子中的**伸缩系数**,值越大代表所占的空间越大。
flex-shrink代表元素在flex盒子中的**收缩系数**,所有元素加起来的大小超出了 flex容器,则需要这个值判断每个元素的收缩大小,值越大收缩得越大,默认值为1。
flex-basis代表一个flex 元素的**初始大小**。
在ie中遇到的问题
父容器设置了父容器为flex盒子,并让其竖向排列。子容器设置flex:0,即会出现异常。
.box{
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
}
.children{
flex:0
}
解决方法,在ie中需要将flex-basis设置为auto。