1. margin是盒子的一部分
这是chrom控制器下的一个简单的盒模型,可以看出,margin连同border、padding、content在内都属于盒子的一部分。
由此,很容易判断margin为正值时盒子的排布情况。
但是注意,margin是永远透明的。
2. padding没有负值
这个没什么好说的,padding为负值时浏览器会无视该属性
3. margin为负值时不能朝着"盒子的一部分"的方向思考
-
只要元素符合"充分利用可用空间",无论垂直还是水平方向,都可以通过margin改变尺寸
什么是
"充分利用可用空间"
呢? 例如,body里有一个未定义width的盒子,这个盒子的宽度会充满body,那么这个盒子在水平方向就是符合"充分利用可用空间"的。 css默认流向方式是水平的,所以对于普通流元素,margin只能改变水平方向的大小。
但是,绝对定位元素是有拉伸特性的,那么margin可以同时改变水平和垂直方向的大小
-
元素不符合"充分利用可用空间",可以移动元素