re:从0开始的CSS学习之路 11. 盒子垂直布局

1. 盒子的垂直布局的注意

  1. 若两个"相邻"垂直摆放的盒子,上面盒子的下外边距与下面盒子的上外边距会发生重叠,称为外边距合并

    若合并后,外边距会选择重叠外边距的较大值

  2. 若两个盒子具有父子关系,则两个盒子的上外边距会发生重叠,若改变盒子的上外边距,父子盒子都会随之移动位置

    三种解决办法:

    1. 可以为父元素添加边框

    2. 可以为父元素添加内边距

    3. 为父元素添加overflow: hidden;

    学习完浮清除动元素的最终解决方案:

    html 复制代码
    .clearfix::after,
    .clearfix::before {
    	content: "";
    	display: table;
    	clear: both;
    }

示例如下:

html 复制代码
<!DOCTYPE html>
<html lang="en">

<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>

	div {
		width: 200px;
		height: 200px;
	}
	
	/* .box1 {
		background-color: #c7edcc;
		margin-bottom: 300px;
	}
	
	.box2 {
		background-color: #fde6e0;
	
		margin-top: 200px;
	} */
	
	.clearfix::after,
	.clearfix::before {
		content: "";
		display: table;
		clear: both;
	}
	
	.father {
		background-color: #c7edcc;
	
		/* border: 1px solid #000; */
		/* padding: 1px; */
		/* overflow: hidden; */
	}
	
	.son {
		width: 100px;
		height: 100px;
		background-color: #fde6e0;
		margin-top: 100px;
	}
</head>

<body>
	<div class="father clearfix">
		<div class="son"></div>
	</div>

	<!-- <div class="box1"></div>
	<div class="box2"></div> -->
</body>

</html>
相关推荐
小满zs1 小时前
React-router v7 第五章(路由懒加载)
前端·react.js
Aotman_2 小时前
Vue el-from的el-form-item v-for循环表单如何校验rules(二)
前端·javascript·vue.js
-曾牛3 小时前
Git完全指南:从入门到精通版本控制 ------- Git仓库创建 (5)
大数据·网络·git·学习·elasticsearch·个人开发
笺上山河梦3 小时前
文件操作(二进制文件)
开发语言·c++·学习·算法
在无清风4 小时前
Java实现Redis
前端·windows·bootstrap
_一条咸鱼_5 小时前
Vue 配置模块深度剖析(十一)
前端·javascript·面试
虾球xz6 小时前
游戏引擎学习第221天:(实现多层次过场动画)
c++·学习·游戏引擎
yechaoa6 小时前
Widget开发实践指南
android·前端
Willliam_william6 小时前
QEMU学习之路(8)— ARM32通过u-boot 启动Linux
linux·学习·elasticsearch
踢足球的程序员·6 小时前
OpenGL学习笔记(几何着色器、实例化、抗锯齿)
笔记·学习·图形渲染