图文讲解CSS的Box Model盒模型中的边距

(编辑:jimmy 日期: 2024/10/31 浏览:2)

盒模型由以下CSS属性组成:

0.内容(content)
1.padding 内边距
2.border 边框
3.margin 外边距
下面有一个最常见的例子,虚线不属于盒模型,用于标识范围。 CSS Code复制内容到剪贴板
  1. <div class="box"></div>   
  2. <style type="text/css">   
  3.     .box {   
  4.         width: 200px;   
  5.         height: 200px;   
  6.         background-color: green;   
  7.         padding: 20px;   
  8.         border: 5px solid red;   
  9.         margin: 50px;   
  10.     }   
  11. </style>  

显式效果:
图文讲解CSS的Box Model盒模型中的边距

你可以使用Chrome(Ctrl + Shift + j)或者Firefox的firebug等开发者工具查看盒模型:
图文讲解CSS的Box Model盒模型中的边距

我做了些简单的标记,黑色方框实线和最外边的虚线一样,都是为了标识,而不是设置的样式:
图文讲解CSS的Box Model盒模型中的边距

我们可以看到,div的内容宽高度均为200px,对一个block或者inline-box元素设置内边距padding,内边距会影响一些CSS元素,比如说背景也会显式在padding上。
红色的为border,而border元素并不会算进元素内容,也就是说没办法获得背景等。
margin元素一般是看不见的,也无法对其设置颜色等,margin常用来与其他元素分割一些距离。
通过DOM改变border的大小,或者显式border,会改变元素的大小,可能会打乱布局,CSS中还有一个属性outline,这个属性和border相类似,也是可以作为边框使用,但是和border不同的是,它是绘制在内容上的,并不会改变盒子大小。IE7和更低版本不支持outline。

外边据叠加
盒子模型还有一个特殊的东西,就是相邻的外边据相遇会进行叠加,取最大的为最终外边据。

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。