justify-content属性详解
justify-content
定义了flexbox flexbox内的元素在主轴的方向上的对齐方式。
它可以设置以下几种对齐方式:
靠近一方
justify-content:center; /*flex元素都居中排列,没有间距*/
justify-content:start; /*flex元素从行/列首开始排列,没有间距*/
justify-content:end; /*flex元素从行/列尾开始排列,没有间距*/
justify-content:flex-start; /*从行首起始位置开始排列*/
justify-content:flex-end; /*从行尾位置开始排列*/
justify-content:left; /*pack items from the left*/
justify-content:right; /*Pack items from the right*/
均匀分布
以上的首尾元素指的是 每一行/列 的第一个和最后一个元素。
justify-content: space-between; /* 均匀排列每个元素
首个元素放置于起点,末尾元素放置于终点 */
justify-content: space-around; /* 均匀排列每个元素
每个元素周围分配相同的间距,
首尾元素与父容器边界的距离是另一边间距的一半 */
justify-content: space-evenly; /* 均匀排列每个元素
每个元素之间的间距相等,包括首尾元素与边框的间距 */
justify-content: stretch; /* 均匀排列每个元素
'auto'-sized 的元素会被拉伸以适应容器的大小 */
溢出控制
justify-content: safe center; /* 如果元素排列后溢出,safe属性将用start作为默认排列方式 */
justify-content: unsafe center; /* 元素溢出后没有调整 */
全局属性
justify-content: inherit; justify-content: initial; justify-content: unset;
注意
当同时给flex元素设置了以下两个属性时,
- 主轴方向上的长度 width / height
- margin : 0 auto
justify-content属性设置的对齐方式不起作用。
推荐一个有趣的 flex练习小游戏 :Flexbox Froggy - A game for learning CSS flexbox