css3对盒子有了新定义,以前的 盒子实际宽(高) = padding + width(height) + ( border * 2); 使用了box-sizing之后盒子实际宽(高) 就等于 width(height)。
听起来非常符合逻辑了。其实想说本来就应该这样,每次布局要考虑 padding和border 真蛋疼。
看下效果
*{padding:0px;margin:0px;} .box{ box-sizing:border-box; width:100px; height:100px; border:2px solid #000; padding:5px 10px; }
这是js获取div实际的宽高。
box-sizing 一般用到两个值。
border-box:padding 和 border 不影响盒子实际尺寸。
content-box:盒子实际宽(高) = padding + width(height) + ( border * 2);
可以理解为 以盒子为主尺寸(border-box),以内容为主尺寸(content-box)。