margin 负值原理
负边距说明
- 不脱离文档流————不使用 float 的话,负 margin 元素是不会破坏页面的文档流。所以如果你使用负 margin 上移一个元素,所有跟随的元素都会被上移。
- 文档流在计算元素位置的时候,会认为负边距把元素的尺寸减小了,因此负边距会减小元素自身供 css 读取的宽度或高度。
- 文档流只能是后面的流向前面的,即对从左往右,从上往下的文档流来说只能向左或向上流动,不能向下或向右移动。
水平负边距(margin-left
,margin-right
)
当元素没有设置 width 属性或者width:auto
的时候,左右负 margin 会增加元素的宽度
垂直负边距(margin-top
,margin-bottom
)
margin-top
为负值不会增加高度,只会产生向上位移 margin-bottom
为负值不会产生位移,会减少自身的供 css 读取的高度