负边距
找了一下负边距的相关文档:CSS布局奇淫巧计之-强大的负边距,总结了一下:
如果margin
为正值,则相当于把元素盒给推过去;若margin
为负值,则相当于把元素盒拉过来
但对于它为什么会对元素宽度有影响,我找了很多文档,包括w3c的官方说明,都没有找出一个合理的解释。最后只能归结于子元素并没有规定宽度,默认会填充整个父元素框,即使将子元素往外拉也不会影响父元素被填充的效果,就会导致元素框被拉长了。
固定定位和绝对定位
对于position:absolute
和position:fixed
的元素,如果没有显式指定其宽度,则其宽度由内容来决定。