栅格是由网格演变而来的另一种说法,都是一个意思——格子,栅格有了规则,也就形成了我们所说的栅格系统
CSS栅格元素
- container(容器)
- rows(行数)
- columns(列数)
- gutters (列间隙)

容器(container)
- 容器的目的是设置栅格系统的总宽度
- width是以100%的形式从父容器中继承而来的
- 通常设置max-width来控制最大宽度
|
|

行元素(rows)
- 将Column元素放置于Row元素里面,用来避免Column元素溢出到其它行
- 为了实现这一效果,使用clearfix来清除浮动
|
|

列元素(columns)
- 列元素是栅格系统中最复杂的部分
- 首先,在CSS中会有很多种不同的定位方式,并且我们需要考虑不同类型列的宽度,以及设计响应式

列的定位(Column Positioning)
- 每一列设置float定位
- Column元素是一个空元素的话,那么它就会浮动到顶部。为了防止这种情况的发生,我们给每个Column元素设置了浮动的同时也设置了1px的最小高度
|
|
列宽度的设置(Column Widths)
- 获取每一列的宽度,用容器的总宽度去除列数,容器宽度是100%,并且需要6列,所以100/6=16.66,最后算出来每一列的宽度就是16.16%
|
|
多列列宽的设置
- 使用的元素的列之和必须为6(即符合你设定的列之和)
|
|
列间隙(Column Gutters)
- 通过border-box模型设置列间隙
|
|

基本栅格布局
|
|

响应式布局
- 栅格调整并用于手机布局,只是调整列的宽度
- 如果屏幕最大宽度600px(0~600),执行所设置的元素宽度
- 如果屏幕最小宽度600px(600~xx),执行所设置的元素宽度
- 如果屏幕最小宽度900px(900~xx),执行所设置的元素宽度
|
|
