css之flex属性

llex属性是css3推出的新的弹性布局

采用flex布局的容器,称为弹性容器,也称为弹性盒子

容器中的子元素也被称为弹性项目

容器里面默认两条轴,分别是主轴和侧轴

容器中的元素,默认是沿主轴排列

首先设置一个div容器,里面有五个小容器,html代码如下

html 复制代码
	 <div class="container">
	 	<div class="d1">div1</div>
	 	<div class="d2">div2</div>
	 	<div class="d3">div3</div>
	 	<div class="d4">div4</div> 
	 	<div class="d5">div5</div>
	 </div>

初始css如下

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
}

.container>div {
           width: 200px;
		}
		.d1 {
			background: red;
		}

		.d2 {
			background: green;
		}
		.d3 {
			background: blue;
		}
		.d4 {
			background: yellow;
		}
		.d5 {
			background: pink;
		}

这段css代码表示外边的container盒子宽700,高200,,里面的盒子宽200,不设高,每个盒子均设有不同的背景颜色

效果如下图

初始设置弹性盒子

css代码如下

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
}

语法:

在display属性上设置flex属性值

flex需要设置其他属性值

首先是flow-direction属性

默认值是row

row-reverse,子元素沿水平方向反向排列

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            flex-direction:row-reverse;
            
}

column,子元素沿垂直方向排列

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            flex-direction:column;
            
}

column-reverse:子元素沿垂直方向反向排列,起点在下方

flex-wrap:是否换行

默认值是nowrap,不换行,如果容器宽度不足以容纳子元素,子元素可能会压缩或者溢出

wrap是换行

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            flex-wrap:wrap;
            
}

wrap-reverse,与wrap相反,从最后一行向上排列

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            flex-wrap:wrap-reverse;
            
}

justify-content:设置主轴对齐方式

属性值

flex-start:默认值,从起点开始排列

flex-end:子元素向flex容器的末端对齐

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            justify-content:flex-end;
            
}

center:子元素居中对齐

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            justify-content:center;
            
}

space-between:第一个子元素在起始位置,最后一个在末端,其余均匀分布。

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            justify-content:space-between;
            
}

space-around:子元素周围分配等间距,首尾间距为中间间距的一半。

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            justify-content:space-around;
            
}

space-evenly:子元素均匀分布,首尾间距与中间间距相同

css 复制代码
.container {
			width: 700px;
			height: 200px;
			border: 1px solid #ccc;
            
            display:flex;
            justify-content:space-evenly;
            
}
相关推荐
EndingCoder16 分钟前
类的继承和多态
linux·运维·前端·javascript·ubuntu·typescript
用户479492835691517 分钟前
React 终于出手了:彻底终结 useEffect 的"闭包陷阱"
前端·javascript·react.js
程序员猫哥23 分钟前
前端开发,一句话生成网站
前端
Younglina44 分钟前
一个纯前端的网站集合管理工具
前端·vue.js·chrome
木头程序员1 小时前
前端(包含HTML/JavaScript/DOM/BOM/jQuery)基础-暴力复习篇
开发语言·前端·javascript·ecmascript·es6·jquery·html5
卖火箭的小男孩1 小时前
# Flutter Provider 状态管理完全指南
前端
小雨青年1 小时前
鸿蒙 HarmonyOS 6|ArkUI(01):从框架认知到项目骨架
前端
Null1551 小时前
浏览器唤起本地桌面应用(基础版)
前端·浏览器
pas1361 小时前
31-mini-vue 更新element的children
前端·javascript·vue.js
wordbaby1 小时前
TanStack Router 实战:如何构建经典的“左侧菜单 + 右侧内容”后台布局
前端·react.js