外边距合并
在 CSS 中,当两个块级元素垂直相邻时,它们的外边距(margin)可能会发生合并(margin collapsing),只取较大的外边距值,而不是相加。
1. 外边距合并示例
p {
margin-top: 30px;
margin-bottom: 20px;
}
div {
margin-top: 40px;
margin-bottom: 10px;
}
当 <p> 和 <div> 竖直相邻时,它们之间的间距不会是 20px + 40px = 60px,而是 40px(较大值)。
2. 外边距合并的条件
- 必须是垂直方向相邻的块级元素。
- 中间没有边框、内边距或内容阻止合并。
- 父元素和第一个子元素的上外边距可能合并,类似的下外边距也可能合并。
3. 如何避免合并
- 给父元素设置边框、内边距或 overflow 属性。
- 使用 padding 替代 margin。
- 改变元素的显示类型。
外边距合并示例
源码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<title>外边距合并示例</title>
<style>
.box1 {
background-color: #ffccbc;
margin-bottom: 30px;
padding: 10px;
border: 1px solid #ff5722;
}
.box2 {
background-color: #ffe0b2;
margin-top: 50px;
padding: 10px;
border: 1px solid #ff9800;
}
.container {
border: 1px solid #333;
padding: 10px; /* 防止外边距合并 */
}
</style>
</head>
<body>
<div class="container">
<div class="box1">盒子 1,底部外边距 30px</div>
<div class="box2">盒子 2,顶部外边距 50px</div>
<p>实际间距为 50px(较大值),而非 80px</p>
</div>
</body>
</html>
相关内容
- 什么是 CSS? CSS(层叠样式表)是一种用来描述网页外观样式的语言。它定义了如何为HTML元素设置颜色、字体、布局等视觉效果,使网页更加美观和易于阅读。
- CSS 的作用与工作原理 介绍CSS的主要作用及其工作原理,帮助理解如何通过样式表控制网页元素的外观和布局,实现内容与表现的分离。
- CSS 的引入方式 介绍CSS的三种主要引入方式:内联样式、内部样式表和外部样式表,帮助开发者选择合适的方法应用样式。
- 基本语法结构 介绍CSS的基本语法结构,包括选择器、属性和属性值的组成方式,帮助理解如何编写有效的样式规则。
- 注释的使用方式 介绍CSS中注释的写法和作用,帮助开发者在样式代码中添加说明,提高代码可读性和维护性。
- 基本选择器 介绍CSS中最基础的三种选择器:元素选择器、类选择器和ID选择器,是学习CSS样式编写的基础。