填充(Padding)和边距(Margin)是CSS盒模型中的两个核心概念,主要区别在于它们作用的区域和功能目标:
padding: 10px;
表示内容四周均留出10像素的空白。margin: 20px;
表示元素四周与其他元素保持20像素的距离。| 特性 | 填充(Padding) | 边距(Margin) | |----------------|-----------------------------------|-----------------------------------| | 作用对象 | 元素内部(内容与边框之间) | 元素外部(与其他元素的间距) | | 背景影响 | 受背景色/图片影响 | 透明,不受背景影响 | | 重叠行为 | 不重叠 | 垂直方向相邻边距可能合并(Margin Collapse) | | 负值 | 不支持负值 | 支持负值(可拉近或重叠元素) |
<div>
块。margin: 0 auto;
)。
代码示例:margin: 0 auto;
)。
代码示例:<p>
标签的margin-bottom
和margin-top
会取最大值而非相加)。
解决: 改用padding
或通过display: inline-block
避免合并。padding
。 ----------------------------
| Margin |
| ------------------------ |
| | Border | |
| | ------------------ | |
| | | Padding | | |
| | | ------------ | | |
| | | | Content | | | |
| | | ------------ | | |
| | ------------------ | |
| ------------------------ |
----------------------------
通过理解两者的差异,可以更精准地控制布局与间距。实际开发中常配合使用,例如用padding
调整内部空间,用margin
控制外部布局。
没有搜到相关的文章