box-sizing 属性允许您以特定的方式定义匹配某个区域的特定元素。
例如,假如您需要并排放置两个带边框的框,可通过将 box-sizing 设置为 "border-box"。这可令浏览器呈现出带有指定宽度和高度的框,并把边框和内边距放入框中。
content-box |
no |
CSS3 |
object.style.boxSizing="border-box" |
box-sizing:content-box | border-box
默认值:content-box
content-box:
padding和border不被包含在定义的width和height之内。对象的实际宽度等于设置的width值和border、padding以及margin之和,即 ( Element width = width + border + padding+margin )
此属性表现为标准模式下的盒模型。
border-box:
padding和border被包含在定义的width和height之内。对象的实际宽度就等于设置的width值,即使定义有border和padding也不会改变对象的实际宽度,即 ( Element width = width )
此属性表现为怪异模式下的盒模型。
例子:
<style type="text/css"> div{width:200px;height:100px;padding: 20px; background:#eee;} .content-box{ box-sizing:content-box; -moz-box-sizing:content-box; border: 10px solid #333; } .padding-box{ box-sizing:padding-box; -moz-box-sizing:padding-box; -webkit-box-sizing:padding-box;/*chrome 不支持*/ border: 10px solid #ccc; } .border-box{ box-sizing:border-box; -moz-box-sizing:border-box; border: 10px solid #666; }</style><div class="content-box">content-box</div><div class="padding-box">padding-box/*chrome 不支持*/</div><div class="border-box">border-box</div>