弹性布局介绍

一.弹性布局 (重点****************)
首先,给大家上个例子对着下面的属性介绍方便理解

<html>
<head>
<style>
.fu{
	width:100%;
	height:100px;
	display:flex; //设置弹性
	flex-direction:row; //设置横向
	flex-wrap:wrap;//空间不够,就换行,项目不压缩
	justify-content:space-around;//每个子元素间隔相同
	align-items:center;//子元素在纵向的位置  这里是居中  也就是垂直居中
}
.zi{
	width:15px;
	height:15px;
	background-color:pink;
}
</style>
</head>
<body>
	<div class="fu">
		<div class="zi"></div>
		<div class="zi"></div>
		<div class="zi"></div>
		<div class="zi"></div>
	</div>
</body>
</html>

1.什么是弹性布局
弹性布局就是一种布局方式
主要解决某元素中的子元素的布局方式,为布局提供最大的灵活性
2.弹性布局的相关概念和专业术语

1.容器
要布局的子元素的父元素称之为容器,容器中写display:flex
2.项目
要布局的子元素称之为项目
3.主轴
项目们排列的方向,称之为主轴(水平和垂直)
如果项目们是按照横向排列,x轴就是主轴
如果项目们是按照纵向排列,y轴就是主轴
4.交叉轴
与主轴垂直相交的方向轴叫做交叉轴
语法
将元素变为弹性容器,他所有的子元素将变成弹性项目,按照弹性布局的方式去排列显示
display
取值:flex, 将块级元素变为容器
inline-flex,将行内元素变为容器
元素设置为flex容器之后,子元素一些样式属性会失效
float/clear/vertical-align失效
子元素允许修改尺寸(项目是行内元素也可以修改尺寸)
容器的对齐方式text-align失效
3.弹性容器的样式属性
1.flex-direction 主轴方向
取值
1.row 默认值,主轴是x轴,主轴起点在左端
2.row-reverse, 主轴是x轴,主轴起点在右端
3.column 主轴是y轴,主轴起点在顶端
4.column-reverse主轴是y轴,主轴起点在底部
2.flex-wrap
当一个主轴排列不下所有项目时,项目的显示方式
取值
1.nowrap 默认值,空间不够,不换行,项目会自动压缩
2.wrap 空间不够,就换行,项目不压缩
3.wrap-reverse 换行,反转
3.flex-flow
是flex-direction和flex-wrap的缩写
取值 direction wrap;
ex:flex-flow:row wrap;
4.justify-content
定义项目在主轴上的对齐方式
取值

  1. space-between 两端对齐
    2.space-around 每个间距相同
    3.flex-start 默认值 在主轴起点对齐
    4.flex-end 在主轴的终点对齐
    5.center 在主轴上居中对齐
    5.align-items (容器高度大于项目高度)
    项目们在交叉轴上的对齐方式
    取值:
    1.flex-start 交叉轴起点对齐
    2.flex-end 交叉轴终点对齐
    3.center 交叉轴居中对齐
    4.baseline 交叉轴基线对齐
    5.stretch 如果项目未设置高度,在交叉轴上充满容器
    4.项目的属性
    是单独设置给一个项目的,不影响容器和其他项目
    1.order
    取值为无单位的整数,定义项目的排列顺序,值越小,离起点越近,默认值为0;
    2.flex-grow
    定义项目的放大比例
    如果容器有足够大的剩余空间,项目将按照比例放大
    取值为无单位整数,
    默认值为0.不放大。取值越大,占据的剩余空间越多
    3.flex-shrink
    定义项目的缩小比例,空间不足时,项目该如何缩小
    取值为无单位整数
    默认值为1,空间不足,等比缩小
    0,不缩小
    取值越大,占据的空间越小
    4.align-self
    控制当前项目在交叉轴上对齐方式,与其他项目无关
    1.flex-start 交叉轴起点对齐
    2.flex-end 交叉轴终点对齐
    3.center 交叉轴居中对齐
    4.baseline 交叉轴基线对齐
    5.stretch 如果项目未设置高度,在交叉轴上充满容器
    6.auto 继承容器的align-items的效果
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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 ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值