css3 - 何时需要 flex-basis: 100% ?
问题描述
下面例子中,同样一个四点骰子为什么.first-face必须有flex-basis: 100%;,而.second-face不需要呢?
codepen地址
/* 核心代码 */.first-face { display: flex; flex-wrap: wrap; align-content: space-between;}.first-face .column { display: flex; justify-content: space-between; flex-basis: 100%; /* 为什么必须有这一行? */}.second-face { display: flex; justify-content: space-between; /* 这里为什么不需要flex-basis: 100%; ?*/}.second-face .column { display: flex; flex-direction: column; justify-content: space-between;}
问题解答
回答1:摘录友站前辈的解答,既简洁又清晰:
楼主的问题可以归结为:为什么.second-face 里的.column 会自动占 100%高度,而.first-face 里的.column 却不会自动占 100%宽度?
我理解是因为 align-items 的缺省值是 stretch (.second-face ),而 flex-grow 缺省值为 0 (.first-face )。
回答2:因为你的第二个盒子 是 纵向布局 你添加了 flex-direction: column;
而第一个盒子 你又应用了 flex-wrap: wrap; 内容超出后换行 而且用的是 align-content而不是justify-content 内容超出换行后 对齐方式justify-content: space-between不再生效
相关文章:
1. javascript - 微信小程序 wx.downloadFile下载文件大小有限制吗2. mysql - 仅仅只是把单引号与反斜杠转义不用prepare statement能否避免sql注入?3. javascript - 天猫首页首屏数据来源4. mysql在限制条件下筛选某列数据相同的值5. 新入手layuiadmin,部署到tp中。想用php自已写一个后台管理系统。6. android - 安卓做前端,PHP做后台服务器 有什么需要注意的?7. php - 生产环境下,给MySQL添加索引,修改表结构操作,如何才能让线上业务不受影响?8. mysql - 拖拽重排序后怎么插入数据库?9. macOS Sierra 10.12 安装mysql 5.7.1出现错误10. mysql 获取时间函数unix_timestamp 问题?
