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>
相关推荐
段旭涛4 分钟前
uniapp 设置手机不息屏
前端·uni-app
古夕6 分钟前
Promise A+ 规范解读
前端·javascript
古夕6 分钟前
Promise 基础概念与实践详解
前端·javascript
SameX7 分钟前
HarmonyOS Next 枚举递归定义与表达式树建模:从理论到实践
前端
SameX9 分钟前
HarmonyOS Next自定义枚举与标准库的协同:Option与Result
前端
用户5806139393009 分钟前
深度解析:解决大型 Git 仓库克隆失败的完整指南
前端
白瓷梅子汤10 分钟前
跟着官方示例学习 @tanStack-table --- Column Ordering
前端·react.js
我想说一句11 分钟前
React组件化开发实战:从"待办事项"看前端乐高搭建术
前端·javascript·react.js
古夕12 分钟前
Promise 解决过程(Promise Resolution Procedure)详解
前端·javascript
spionbo12 分钟前
Vue 自定义进度条实现方法与应用场景解析
前端·面试