CSS Flex 布局的 flex-direction 属性讲解

简介: CSS Flex 布局的 flex-direction 属性讲解

flex-direction 设置了主轴,从而定义了弹性项目放置在弹性容器中的方向。

Flexbox 是一种单向布局概念,可将弹性项目视为主要以水平行或垂直列布局。

253fe58933ad2a74a244c615619f01a0.png

.container {
  flex-direction: row | row-reverse | column | column-reverse;
}

几种支持的属性:


  • row (default): left to right in ltr; right to left in rtl
  • row-reverse: right to left in ltr; left to right in rtl
  • column: 和 row 属性工作原理相同,只不过是从 top 到 bottom 布局
  • column-reverse: 同 row-reverse,只不过是从 bottom 到 top


flex-grow 属性


该属性定义了 flex item 在必要时增长宽度的能力。它接受一个作为比例的无单位值。 它规定了项目应该占用弹性容器内的可用空间量。

下图第一行,三个元素的 flex item 的 flex-grow 都为 1,因此共同平分 flex 容器剩余的宽度。

99d0e01a3ea456755996a7c19456e9a3.png

下图第二行中间的 flex item 的 flex-grow 属性为 2,其他两个元素为 1,因此宽度比例为1:2:1.


如果所有项目都将 flex-grow 设置为 1,则容器中的剩余空间将平均分配给所有子项。 如果其中一个 item 元素的值为 2,则该 item 将占据其他 item 的两倍空间(或者至少会尝试)。


justify-content


6368bc8ee5e457f546d83f577c1a61e7.png

该属性定义了沿主轴的对齐方式。 当一行中的所有 flex 项目已达到其最大大小时,它有助于分配剩余的额外可用空间。 当项目溢出线时,它还对项目的对齐施加一些控制。


  • flex-start(默认):项目被打包到 flex-direction 的开始。
  • flex-end:项目被打包到 flex-direction 的末端。
  • start: items 被打包到 writing-mode 方向的开始。
  • end:项目被打包到书写模式方向的末尾。
  • left:项目被打包到容器的左边缘,除非这对 flex-direction 没有意义,否则它的行为就像开始。
  • right:项目被打包到容器的右边缘,除非这对 flex-direction 没有意义,否则它的行为就像 end。
  • 中心:项目沿线居中
  • space-between:项目在行中均匀分布; 第一项在开始行,最后一项在结束行
  • space-around:项目均匀分布在一行中,周围的空间相等。 请注意,从视觉上看,空间并不相等,因为所有项目的两侧都有相等的空间。 第一个项目将在容器边缘有一个空间单位,但下一个项目之间有两个单位的空间,因为下一个项目有自己适用的间距。
  • space-evenly:项目分布使得任意两个项目之间的间距(以及到边缘的空间)相等。
相关文章
|
25天前
|
XML 前端开发 数据格式
css核心组成部分包括选择器、属性和值。
【4月更文挑战第5天】css核心组成部分包括选择器、属性和值。
18 7
|
26天前
|
前端开发 开发者 容器
彻底学会CSS grid网格布局
【4月更文挑战第1天】 彻底学会CSS grid网格布局
16 0
|
26天前
|
前端开发 开发者 容器
彻底学会CSS 弹性布局flex
【4月更文挑战第1天】 彻底学会CSS 弹性布局flex
14 0
|
1天前
|
前端开发
css样式字体、文本、背景属性,盒子模型详解,轻松调教出优美的字体和网页背景色
css样式字体、文本、背景属性,盒子模型详解,轻松调教出优美的字体和网页背景色
|
9天前
|
前端开发
CSS列表属性
CSS列表属性。
18 5
|
11天前
|
前端开发 UED
CSS cursor的一些相关属性
CSS cursor的一些相关属性
|
15天前
|
编解码 前端开发 iOS开发
前端开发入门笔记(八)CSS3属性详解:动画详解+Flex布局图文详解+Web字体
前端开发入门笔记(八)CSS3属性详解:动画详解+Flex布局图文详解+Web字体
57 1
|
15天前
|
前端开发 容器
CSS3属性详解(一)文本 盒模型中的 box-ssize 属性 处理兼容性问题:私有前缀 边框 背景属性 渐变 前端开发入门笔记(七)
CSS3属性详解(一)文本 盒模型中的 box-ssize 属性 处理兼容性问题:私有前缀 边框 背景属性 渐变 前端开发入门笔记(七)
27 2
|
15天前
|
前端开发 JavaScript 容器
CSS属性:定位属性+案例讲解:博雅互动 前端开发入门笔记(五)
CSS属性:定位属性+案例讲解:博雅互动 前端开发入门笔记(五)
16 1
|
15天前
|
前端开发
css属性是什么
【4月更文挑战第15天】css属性是什么
13 3