在此页面中,当.gridster > ul
的宽度发生变化时,.gridster
的宽度会保持不变。通常,父元素的宽度随子元素宽度的变化而变化。在这种情况下为什么它保持不变。如何使父元素的宽度始终等于子元素。
答案 0 :(得分:3)
因为.gridster
是块级非替换元素。
10.3 Calculating widths and margins
10.3.3 Block-level, non-replaced elements in normal flow以下约束必须包含在另一个的使用值中 属性:
'margin-left' + 'border-left-width' + 'padding-left' + 'width' + 'padding-right' + 'border-right-width' + 'margin-right' = width of containing block
在这种情况下,
width
,因此其值为初始auto
。auto
。border-*-style
,因此其值为初始none
。因此水平border-*-width
计算到0
。0
。然后,
0
。0
,因为width
为auto
。width
计算containing block的宽度。