css之flex布局

148 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第5天,点击查看活动详情

什么是flex布局

flex布局意为弹性布局(弹性盒子),全称为Flexible Box。这是 CSS3 中的一种新的布局模式,可以简便、完整、响应式地实现各种页面布局。并且如今开发网页可能显示在不同的屏幕上,这就要求我们做出不同的适配,如果使用我们的flex布局,那么就会在不同的屏幕上得到自适应。并且flex属性支持大部分浏览器,兼容性比较好。

flex布局的使用

属性列表

属性描述
display指定 HTML 元素的盒子类型, 设置为flex
flex-direction指定弹性盒子中子元素的排列方式 ,可以设置为row 和 column 2种。
flex-wrap设置当弹性盒子的子元素超出父容器时是否换行,常用wrap 和 nowrap
flex-flowflex-direction 和 flex-wrap 两个属性的简写
justify-content设置弹性盒子中元素在主轴方向上的对齐方式
align-items设置弹性盒子中元素在侧轴方向上的对齐方式
align-content修改 flex-wrap 属性的行为,类似 align-items,但不是设置子元素对齐,而是设置行对齐
order设置弹性盒子中子元素的排列顺序
align-self在弹性盒子的子元素上使用,用来覆盖容器的 align-items 属性
flex设置弹性盒子中子元素如何分配空间
flex-grow设置弹性盒子的扩展比率
flex-shrink设置弹性盒子的收缩比率
flex-basis设置弹性盒子伸缩基准值

基础使用

如果我们一个布局要放三个元素,并且平均分布,那么可以使用如下

        .v-flex{
		display: flex;
		flex-direction: row;
		justify-content: space-around;
		
	}

image.png 这是设置横向布局平均分布,同时justify-content 可以设置为space-between,效果如下

image.png 如果设置为center,效果如下

image.png 我们在开发中常用的就是这三种效果。 同样的如果是竖向排列,那么这些排列方式就变成竖向了,但是要注意,竖向需要有高度。

image.png

主轴侧轴区别

常用到的2个属性 justify-content 和 align-items 如果设置的方向是横向 那么justify-content 设置的就是横向的位置排列,即为主轴。 如果设置的方向是竖向,那么justify-content 设置的就是竖向的位置排列,即为主轴。 相对的 align-items 同样为此。

总结

常用的flex布局非常需要掌握,在以后的开发中必不可少,下一次总结通过flex实现一些常用布局。