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>
相关推荐
PineappleCoder1 天前
性能数据别再瞎轮询了!PerformanceObserver 异步捕获 LCP/CLS,不卡主线程
前端·性能优化
PineappleCoder1 天前
告别字体闪烁 / 首屏卡顿!preload 让关键资源 “高优先级” 提前到
前端·性能优化
晓梦.1 天前
Vue3学习笔记
笔记·学习
m0_471199631 天前
【vue】通俗详解package-lock文件的作用
前端·javascript·vue.js
思成不止于此1 天前
【MySQL 零基础入门】DQL 核心语法(二):表条件查询与分组查询篇
android·数据库·笔记·学习·mysql
GIS之路1 天前
GDAL 读取KML数据
前端
今天不要写bug1 天前
vue项目基于vue-cropper实现图片裁剪与图片压缩
前端·javascript·vue.js·typescript
用户47949283569151 天前
记住这张时间线图,你再也不会乱用 useEffect / useLayoutEffect
前端·react.js
咬人喵喵1 天前
14 类圣诞核心 SVG 交互方案拆解(附案例 + 资源)
开发语言·前端·javascript