弹性布局(flex布局)

—弹性布局的基本使用—

今天我们将来认识一下弹性布局的基本使用方法。
首先我们简单的认识一下弹性布局:
display:flex;
flex-direction:__;(空白处添加属性)

弹性布局的使用需要由父元素和其子元素同时组成——

容器的属性(父元素)

首先写四个盒子

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
     #wrapper{
     	width: 200px;
     	height:200px;
     	background-color: pink;
     	
     	
     }
     #content{
     	width:50px;
     	height:50px;
     	background-color: black;
     	color: white;
     }
     #content1{
     	width: 50px;
     	height:50px;
     	background-color: red;
     }
     #content2{
     	width:50px;
     	height:50px;
     	background-color: white;

     }
     #content3{
     	width:50px;
     	height:50px;
     	background-color: #ccc;
    }

	</style>
</head>
<body>
	<div id="wrapper">
		<div id="content">c</div>
		<div id="content1">1</div>
		<div id="content2">2</div>
		<div id="content3">3</div>
		
	</div>
</body>
</html>

在这里插入图片描述
由于< div >的块状元素特性c 1 2 3现在都各自独占一行。
那么我们就可以使用弹性布局(flex布局)进行修改它的布局方式
我们需要对其父元素使用——
display:flex;
flex-direction:;那么第二条代码中就根据自己的需求来相应设置
row (默认值 )在水平方向显示;
row-reverse 在水平方向显示 起点在左端;
column 在垂直方向显示 上方为起点;
column 在垂直方向显示 下方为起点;

接下来让我们看看效果——

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
     #wrapper{
     	width: 200px;
     	height:200px;
     	background-color: pink;
     	display: flex;
     	flex-direction:row; /* 设置方向*/
     	
     	
     }
     #content{
     	width:50px;
     	height:50px;
     	background-color: black;
     	color: white;
     }
     #content1{
     	width: 50px;
     	height:50px;
     	background-color: red;
     }
     #content2{
     	width:50px;
     	height:50px;
     	background-color: white;

     }
     #content3{
     	width:50px;
     	height:50px;
     	background-color: #ccc;
     }
    
	</style>
</head>
<body>
	<div id="wrapper">
		<div id="content">c</div>
		<div id="content1">1</div>
		<div id="content2">2</div>
		<div id="content3">3</div>
		
	</div>
</body>
</html>

在这里插入图片描述
此时c 1 2 3 四块区域已经展现出从左至右的排列方式,我们再来对比一下其他的属性——

<style type="text/css">
     #wrapper{
     	width: 200px;
     	height:200px;
     	background-color: pink;
     	display: flex;
     	flex-direction:row-reverse;/* 设置方向*/
     	

在这里插入图片描述
显然c 1 2 3四个区域的顺序已经变为从右至左,那么column以及column-reverse 大家可以自己下去尝试一下增加下印象。

那么我们继续了解其他属性——
nowrap(默认)不换行 给定宽度不够时会将各区块同等挤压;
wrap 换行 第一行在最上方;
wrap-reverse 换行 第一行在最下方;
一:

 #wrapper{
     	width: 200px;
     	height:200px;
     	background-color: pink;
     	display: flex;
     	flex-direction:row;/* 设置方向*/
     	flex-wrap:nowrap; /*换行设置*/
     	
     }
     #content{
     	width:50px;
     	height:50px;
     	background-color: black;
     	color: white;
     }
     #content1{
     	width: 50px;
     	height:50px;
     	background-color: red;
     }
     #content2{
     	width:50px;
     	height:50px;
     	background-color: white;

     }
     #content3{
     	width:50px;
     	height:50px;
     	background-color: #ccc;
    }
    #content4{
    	width:50px;
    	height:50px;
    	background-color: #8B008B;
    }

在这里插入图片描述
每个小块都设置为50x50的小正方形,粉色的大块为200x200的大正方形 为了在同一行将所有元素放下,每个小块的宽都被压缩了10px。
二:

  #wrapper{
     	width: 200px;
     	height:200px;
     	background-color: pink;
     	display: flex;
     	flex-direction:row;/* 设置方向*/
     	flex-wrap:wrap; /*换行设置*/
     	
     }

在这里插入图片描述
三:

#wrapper{
     	width: 200px;
     	height:200px;
     	background-color: pink;
     	display: flex;
     	flex-direction:row;/* 设置方向*/
     	flex-wrap:wrap-reverse; /*换行设置*/
     	
     }

在这里插入图片描述

另外 flex-flow,是flex-direction和flex-warp的简写形式默认值是:row nowarp;
2——justify-content

justify-content属性定义了项目在主轴上的对齐方式。
共有五个属性:
1-flex-start(默认值):左对齐
2-flex-end:右对齐
3-center:居中
4-space-between:两端对齐,项目之间的间隔都相等
5-space-around:每个项目两侧的间隔相等。所以,项目之间的间隔比项目与边框的间隔大一倍
flex-start

 #wrapper{
     	width: 200px;
     	height:200px;
     	background-color: pink;
     	display: flex;
     	justify-content:flex-start;
     	
     	
     }

注意我们此时已经更改代码;

flex-end

 #wrapper{
     	width: 200px;
     	height:200px;
     	margin:0 auto;
     	background-color: pink;
     	display: flex;
     	justify-content:flex-end;

在这里插入图片描述
显然三个盒子已经由左对齐变为右对齐,那么接下来请各位小伙伴自己尝试一下其他属性。

align-items属性定义项目在交叉轴上如何对齐

1——flex-start(交叉轴的起点对齐)
2——flex-end(交叉轴的终点对齐)
3——center(交叉轴的中点对齐)
4——stretch(项目的第一行文字的基线对齐。)
5——baseline((默认值):如果项目未设置高度或设为auto,将占满整个容器的高度)
在这里插入图片描述
以上就是容器的属性,后续我们再学习项目的属性。
谢谢大家——Miziguo >_< !!!

  • 11
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
Flex布局,也称为弹性布局,是一种浏览器提倡的布局模型。它的特点是可以更简单、灵活地布局网页,避免了浮动脱标的问题。通过使用Flex布局,我们可以精确灵活地控制块级盒子的布局方式,避免浮动布局中脱离文档流现象的发生。Flex布局非常适合用于结构化布局。 Flex布局的设置方式是在父元素上添加`display: flex`,这样子元素就可以自动地被挤压或拉伸。Flex布局由弹性容器、弹性盒子、主轴、侧轴/交叉轴组成。 在Flex布局中,`flex`属性是`flex-grow`、`flex-shrink`和`flex-basis`三个属性的简写,默认值为`0 1 auto`。其中`flex-grow`表示弹性元素的放大比例,`flex-shrink`表示弹性元素的缩小比例,`flex-basis`表示弹性元素的初始大小。 除了`flex`属性,还有一些其他的属性可以用来设置Flex布局,这些属性设置在容器上,包括`flex-direction`、`flex-wrap`、`flex-flow`、`justify-content`、`align-items`和`align-content`等属性,用来控制弹性容器和弹性盒子的布局方式。 总结来说,Flex布局是一种简单、灵活的布局模型,通过使用弹性容器和弹性盒子,可以精确控制块级盒子的布局方式,避免了浮动布局中的问题。使用Flex布局可以使网页的布局更加简单、灵活,适用于结构化布局。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Flex布局(弹性布局)-图文介绍](https://blog.csdn.net/qq_52031408/article/details/124053711)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [flex弹性布局](https://blog.csdn.net/m0_48958478/article/details/125508280)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值