PHP前端开发

盒子模型的理解

百变鹏仔 2个月前 (10-18) #H5教程
文章标签 盒子

盒子模型有两种:w3c和ie盒子模型

盒子模型包括margin、border、padding、content

W3C的元素宽度=content的宽度

IE的元素宽度=content+padding+border

 

我个人认为W3C定义盒子模型与IE定义的盒子模型,IE定义的比较合理,

元素的宽度应该包含border(边框)和padding(填充),这个和我们现实生活的盒子是一样的,

W3C也认识到自己的问题了,所以在CSS3中新增了一个样式box-sizing,

包含两个属性content-box 和 border-box。

 

content-box  :  width=content+padding+border

border-box:     width=width(样式指定的宽度)

1.对于行级元素,margin-top和margin-bottom对于上下元素无效,margin-left和margin-right有效

2.对于相邻的块级元素margin-bottom和margin-top 取值方式

 1) 都是正数: 取最大值   距离=Math.max(margin-botton,margin-top)

  2) 都是负数: 取最小值   距离=Math.min(margin-botton,margin-top)

  3)上面是正数,下面是负数或者 上面是负数,下面是正数: 正负相加   距离=margin-botton+margin-top