这个是CSS规范化的结果,在1999规范以前,所有元素都是默认有border的,或者说,即使border宽度为0,仍然可作定位使用。
现在的规范中,将对margin定义更明确化(外边距:与当前盒模型以外的最近一个盒模型的间距),如果直接的父级盒模型在当前方向上没有border,就认为父级的范围也属于子标签的边框的一部分。
这种情况肯定是你代码有问题了,你用margin-top的话,父级元素有没有定义好,如果你只是在html里面定义了父级,又没有对其做任何样式定义的话,可能就会有这种情况。你好好检查自己代码看看
这种看你结构理解了 但也不是你理解错了 最好呢还是用在父级容器用padding-top 经验之谈
我不知道你所说的父层一起移动是什么概念,最好给你的代码贴出来。但父层如果包含子层的话,会被撑大这是正常的。
比如下面这个例子,你可以修改margin-top看看效果