(CSS初学者)这里CSS的margin为什么会是这个效果?

新手上路,请多包涵

image.png
图一是one中没有加margin的效果
image.png
图二是one中加上margin之后的效果

问:margin不是调节两个盒子之间的边距么?我的理解是one在canvas里面,那么margin应该是canvas和one的border之间的距离,为什么one会带着canvas的上边界一起下缩20px呢?难道不应该是one相对canvas下缩20px吗?
不知道我又没有表述清楚...

贴一下完整的css代码:
image.png
完整的html代码:
image.png

【先谢谢大家~】

阅读 1.9k
2 个回答

margin合并的原因 👉 外边距重叠 - MDN,有时候也会说成“外边距塌陷”。

块的上外边距 (margin-top)和下外边距 (margin-bottom)有时合并 (折叠) 为单个边距,其大小为单个边距的最大值 (或如果它们相等,则仅为其中一个),这种行为称为边距折叠。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题