w3c - CSS 折叠边距有什么意义?

标签 w3c css

CSS2 盒子模型告诉我们adjoining vertical margins collapse .

我觉得这很烦人,因为它是许多设计错误的根源。我希望通过了解折叠边距的目的,我将了解何时使用它们以及如何在不需要时避免它们。

此功能的用途是什么?

最佳答案

“边距”的一般含义不是传达“将此移动 10px”,而是“此元素旁边必须有 10px 的空白空间”。

我一直发现这是最容易用段落概念化的。

如果您只给段落 margin-top: 10px 并且在任何其他元素上都没有边距,那么一系列段落的间距就会很漂亮。但是,当然,在段落下方放置另一个元素时,您会遇到麻烦。两者会接触。

如果边距没有折叠,您会犹豫是否将 margin-bottom: 10px 添加到您之前的代码中,因为这样任何一对段落都会间隔 20px,而段落会与其他元素仅 10px。

所以垂直边距崩溃了。通过添加 10px 的顶部和底部边距,您是在说,“我不在乎任何其他元素的边距规则。我要求每个段落的上方和下方至少有 10px 的填充。”

关于w3c - CSS 折叠边距有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3069921/

相关文章:

html - scss BEM 修改器的困难

javascript - 如何在加载 html 之前运行 <script> 标记

javascript - W3C规范中未包含使用特定于 vendor 的扩展的优缺点是什么?

php - 更新或检索 mysql 上的日期时间为 w3c 日期和时间格式

.net - 打开外部 DTD(w3.org、xhtml1-transitional.dtd)时发生错误。 503 服务器不可用

html - 删除使用 :after pseudo element 嵌入的每个 dt 之前最后一个 dd 的逗号

javascript - 动态直接通过服务器加载元素时的 CSS 负边距差异

html - 重复 ID 的 W3C 错误

html - 讨厌的 lil' <small> 元素不能与文本对齐一起工作,需要被阻止

javascript - 在背景上释放鼠标时不关闭的模态实现(但仅在单击背景时)