关于页面布局原理需要了解到以下两个概念
- 盒模型
- 文档流
1、盒模型
1.1、盒模型组成
浏览器在布局时,会将每个元素当成一个盒子。盒模型用来描述元素所占用空间的内容,盒模型包括 margin, border, padding, content 四个部分。CSS 中存在两种盒模型
- 标准盒模型
给盒设置 width 和 height,实际设置的是 content box。
盒子真实 显示大小 = width + padding + border
- IE盒模型
给盒设置 width 和 height,实际设置的是 border box。
盒子真实 显示大小 = width = content + padding + border
1.2、如何设置?
通过设置 box-sizing 属性值
content-box: 标准盒模型border-box: IE 盒模型padding-box: (ps: Firefox 推出过,后被删除)
推荐使用 border-box, 可避免手动计算各尺寸
2、文档流
默认文档流会从上到下,从左到右依次排列布局,可通过 position 属性调整元素的布局方式
2.1 position
- static
- inherit
- relative
- absolute
- fixed
- sticky