css2.1盒模型:
当你定义盒子的宽高后;如果添加padding和border值后盒子的宽高会被撑大
盒子的高度=定义的高度+(padding-top + padding-bottom)+(border-top + border-bottom);
盒子的宽度=定义的宽度+(padding-left+ padding-right)+(border-left+ border-right);
css3.0盒模型:
当你定义盒子高度后;如果添加padding和border值后盒子大小不会改变,他会向内容区收缩。
盒子的高度=你定义的高度;盒子的宽度度=你定义的宽度;
用法:
box-sizing:用来控制元素的盒模型解析模式
box-sizing:content-box | border-box | inherit;
默认值是content-box:维持W3C的标准盒模型 也就是css3.0以前的版本布局
border-box:重新定义盒模型组成的模式。
inherit:使元素继承父元素的盒模型模式。
写法(考虑兼容):
-moz-box-sizing: border-box; --webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing:border-box; box-sizing: border-box;
实例:
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>css3布局</title></head><style>*{margin:0;padding:0;}.wrapper{width:960px;margin:0 auto; color:#fff;background:#cccccc;text-align:center;-moz-box-sizing: border-box;--webkit-box-sizing: border-box;-moz-box-sizing: border-box;-ms-box-sizing:border-box;box-sizing: border-box;}.header{background:#38382e;margin-bottom: 10px;border:10px solid red;padding:10px;width:100%;height:100px;box-sizing:inherit;}.sidebar{ float:left; width:220px; margin:0px 20px 10px 0px; height:300px; background:#5d33cf;border:10px solid red;padding:10px;box-sizing:inherit;} .content{float:left;width:720px;margin-bottom: 10px;height:300px;background:#c8ca30;border:10px solid red;padding:10px; box-sizing:inherit; } .footer{ clear:both;width:100%;height:100px;background:#cc4ad5;border:10px solid red;padding:10px; box-sizing:inherit; }</style><body><div class="wrapper"><div class="header">页眉</div><div class="sidebar">左边栏</div><div class="content">主内容</div><div class="footer">页脚</div></div></body></html>
效果:
新闻热点
疑难解答