Flex-grow 不按比例调整宽度
Flex-grow not proportionally adjusting width
我刚刚熟悉 Flex 框,当我将 flex-grow:1 应用于一组列时,它似乎使列高度均匀增长,但不是我的目标宽度。
如果我理解这一点,默认的 flex-direction 是 "row"...所以理论上宽度不应该都相等。
.flex{display:flex}
.flex div{flex-grow:1}
/*Just for visual separation*/
.flex div:nth-child(odd){background-color:#ccc}
这是我的示例的代码笔
http://codepen.io/dougmays/pen/dPWQdp
谢谢
正如您在代码笔中所做的那样
这行不通
.flex{display:flex;}
.flex div{flex-grow:1}
但这确实有效
.flex2{display:flex;}
.flex2 div{flex:1}
不同之处在于,当您设置 flex:1 时,您还将 flex-basis 设置为 0px(默认值)。
在第一个示例中,缺少 flex-basis 值,元素从当前宽度开始均匀增长。既然这样不同,最后的结果也不同
我刚刚熟悉 Flex 框,当我将 flex-grow:1 应用于一组列时,它似乎使列高度均匀增长,但不是我的目标宽度。
如果我理解这一点,默认的 flex-direction 是 "row"...所以理论上宽度不应该都相等。
.flex{display:flex}
.flex div{flex-grow:1}
/*Just for visual separation*/
.flex div:nth-child(odd){background-color:#ccc}
这是我的示例的代码笔 http://codepen.io/dougmays/pen/dPWQdp
谢谢
正如您在代码笔中所做的那样
这行不通
.flex{display:flex;}
.flex div{flex-grow:1}
但这确实有效
.flex2{display:flex;}
.flex2 div{flex:1}
不同之处在于,当您设置 flex:1 时,您还将 flex-basis 设置为 0px(默认值)。
在第一个示例中,缺少 flex-basis 值,元素从当前宽度开始均匀增长。既然这样不同,最后的结果也不同