弹性布局(伸缩布局)

弹性布局

弹性布局是一种当页面需要适应不同的屏幕大小以及设备类型时确保元素拥有恰当的行为的布局方式。
使用方法:父元素设置display:flex

注意:父元素属性设置了flex布局其子元素的float,clear,vertical-align将无效

常用属性

1.flex-direction 调整子元素的排列方向(默认水平方向row)column(垂直)

.main{
			width:400px;
			height:300px;
			border:1px solid red;
			margin: 0 auto;
			display: flex;
			flex-direction:column;//
		}

在这里插入图片描述

2.justify-content:设置水平对齐)

描述
flex-start 子元素左对齐
flex-end 子元素右对齐(不改变盒子顺序)
center 水平居中
space-between 左右的盒子贴近父盒子,中间的平均分布空白间距
space-around 每个盒子平均分配父元素留下的左右间距

space-between左右的盒子贴近父盒子,中间的平均分布空白间距
在这里插入图片描述
space-around每个盒子平均分配父元素留下的左右间距
在这里插入图片描述
2.align-items:调整侧轴对齐(设置单行垂直对齐)

描述
stretch 默认,使子元素的高度拉伸填充父容器(在子元素不指定高度的情况)
flex-start 顶部对齐
flex-end 底部对齐
center 垂直居中

3.flex-warp控制是否换行

描述
nowwap 不换行(压缩形式显示)
wrap 自动换行
wrap-reverse 自动换行(以相反的顺序)

4.align-content设置多行垂直对齐
前提:必须设置父元素display:flex flex-direction:row

描述
stretch 使子元素的高度拉伸填充父容器(在子元素不指定高度的情况)
center 垂直居中
flex-start 顶部对齐
flex-end 底部对齐
space-between 左右的盒子贴近父盒子,中间的平均分布空白间距
space-around 每个盒子平均分配父元素留下的左右间距

center
在这里插入图片描述
space-around
在这里插入图片描述

子元素属性

  • order:设置元素排列顺序,值越小排在最前,默认0
  • flex-grow num:定义子元素的放大比例;
    如果父元素还有剩余空间,可指定相应子元素占满父元素空间
  • flex-shrink:定义子元素的缩小比例;
    如果父元素空间不够,可指定相应子元素缩小相应比例,。默认自动
  • flex flex-grow和flex-shrink的复合属性
  • anign-self:设置单个子元素的对齐方式
描述
center 垂直居中
flex-start 顶部对齐
flex-end 底部对齐

注意: Internet Explorer 和 Safari 浏览器不支持 align-self 属性。

发布了44 篇原创文章 · 获赞 1 · 访问量 1510

猜你喜欢

转载自blog.csdn.net/weixin_45143481/article/details/104265690