目录
摆盒子方式大改变
接触到弹性布局之前摆盒子一直用的是大,小的浮动,边距设置margin,内容padding挤一挤
清清浮动ov:hidden,忒麻烦,多了摆的闹心,
想到一个display:flex解决很多问题心里顿时不爽,我之前学的什么鬼,当然,话不能说满,毕竟想去改前同事写的bug还是得了解的
以上皆是我个人有所感
弹性布局
弹性容器
给父元素添加一个display:flex 使其成为弹性容器,其子元素自然成为弹性盒子,排版布局都很方便
弹性盒子
父元素被苦逼程序猿添加display: flex;后,子元素自动变身为弹性盒子,本身纵列的盒子自动在一行排列
常用主轴(默认X轴)排列的一些属性
这里整理出来一些常用的:
.box {
width: 1200px;
height: 400px;
background-color: pink;
margin: 0 auto;
/* 弹性容器 */
display: flex;
/* 主轴对齐 快捷键jc*/
/* 从左到右,起点开始排列盒子 */
justify-content: flex-start;
/* 从右到左,终点开始排列盒子 */
justify-content: flex-end;
/* 盒子水平居中 重点*/
justify-content: center;
/* 2边靠边,中间自适应 重点*/
justify-content: space-between;
/* 盒子自适应,按照1边2的比列平均分 */
justify-content: space-around;
/* 盒子自适应,盒子中间的距离1:1平均分 */
justify-content: space-evenly;
}
常用一些侧轴(默认Y轴)排列属性
.box {
width: 1200px;
height: 400px;
background-color: pink;
margin: 0 auto;
/* 弹性容器 */
display: flex;
/* 侧轴对齐方式 快捷键ai*/
/* 从上往下排列盒子 */
align-items: flex-start;
/* 从下往上排列盒子 */
align-items: flex-end;
/* 垂直盒子居中 重点 */
align-items: center;
/* 默认值 拉伸*/
align-items: stretch;
}
圣杯布局
所谓圣杯布局,其实就是一个三栏布局,左右固定大小,中间自适应,来适应各种手机,有一个小栗子
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
* {
margin: 0;
padding: 0;
}
.box {
width: 100%;
height: 50px;
background-color: pink;
/* 弹性容器 */
display: flex;
/* 盒子最小宽度不能小于500px */
min-width: 500px;
}
/* 弹性容器 */
.box .left,
.box .right {
width: 50px;
height: 50px;
background-color: aqua;
}
.box .center {
/* 平分父盒子多余的宽度 */
flex: 1;
height: 50px;
background-color: red;
}
</style>
<!-- 圣杯布局:2边盒子要固定,中间盒子自适应 -->
</head>
<body>
<div class="box">
<div class="left"></div>
<div class="center"></div>
<div class="right"></div>
</div>
</body>
</html>
屏幕缩小左右盒子都不变,中间盒子自减,