CSS篇01-谈谈CSS盒模型

408 阅读1分钟
  1. 谈谈CSS盒模型。

CSS把所有html元素都看成一个盒子,因此有了盒模型这个说法。

盒模型包括 contentpaddingbordermargin 四个部分,其中margin外边距部分不算作盒子宽度以内。

image.png

盒模型又根据widthheight包含的部分不同而分为W3C标准盒模型IE盒模型两种。

有两个宽度和高度需要注意:

  1. CSS定义的width属性和height属性

    在标准盒模型中,width属性定义的是content的宽度,同理height属性定义的是content的高度。

    在IE盒模型中,width属性定义的是content的宽度+padding的宽度+border的宽度,height同理。

  2. 盒子的尺寸宽度和高度

    无论哪个盒模型,盒子尺寸宽度始终包括content的宽度+padding的宽度+border的宽度

    因此在标准盒模型中,width属性定义的只是盒子尺寸宽度的一部分,所以会出现padding值和border值变化,盒子尺寸宽度(盒子大小)也会变化的情况。

    而在IE盒模型中,width属性定义的就是盒子尺寸宽度,因此若改变padding值和border值,盒子尺寸也不会改变,只是内部的content尺寸会受影响。 image.png

    可以通过元素的box-sizing属性改变元素的盒模型,属性值content-box对应标准盒模型,属性值border-box对应IE盒模型

\