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;
            
}
相关推荐
Mr Xu_22 分钟前
Vue 3 中计算属性的最佳实践:提升可读性、可维护性与性能
前端·javascript
jerrywus28 分钟前
我写了个 Claude Code Skill,再也不用手动切图传 COS 了
前端·agent·claude
玖月晴空32 分钟前
探索关于Spec 和Skills 的一些实战运用-Kiro篇
前端·aigc·代码规范
子兮曰37 分钟前
深入理解滑块验证码:那些你不知道的防破解机制
前端·javascript·canvas
会一丢丢蝶泳的咻狗1 小时前
Sass实现,蛇形流动布局
前端·css
攀登的牵牛花1 小时前
前端向架构突围系列 - 状态数据设计 [8 - 4]:有限状态机 (FSM) 在复杂前端逻辑中的应用
前端
Lsx_1 小时前
前端视角下认识 AI Agent 和 LangChain
前端·人工智能·agent
我是伪码农2 小时前
Vue 智慧商城项目
前端·javascript·vue.js
不认输的西瓜2 小时前
fetch-event-source源码解读
前端·javascript
用户39051332192882 小时前
前端性能杀手竟然不是JS?图片优化才是绝大多数人忽略的"降本增效"方案
前端