avatarGithub

块级元素默认宽度

2015-06-05

一直以为块级元素的默认宽度就是width: 100%,结果却被打脸

块级元素的默认width

假设一个块级元素的position属性为staticrelative,如果你不设定width,那么该元素的width默认值类似100%,但同时元素的内边距与边框会向内挤,就好像设置了box-sizing: border-box。如果你设定了width为100%,那么内边距与边框会向外挤。 所以块级元素的width默认值并不是100%,更像是剩余空间的宽度。了解了这一点后,当你考虑要不要设置width时候,也能有据可循。

绝对定位元素的默认width

没有设置width,且position属性为absolute的元素的表现有一点奇怪。这些元素的宽度就是内容所需要的宽度,就像行内元素一样。

浮动元素的默认width

浮动元素的默认宽度与上一中情况一样,就像行内元素一样。

demo