bootstrap4源码阅读体会

bootstrap使用了很长时间,是页面快速开发的一把利器。最近,bootstrap4马上呼之欲出,春节闲来无事,就从源码层面解读下。

1. 移动优先

在移动互联网时代,很多公司都坚持移动端优先的原则,bootstrap也迎合了这种需求,具体表现在如下方面:

2. 代码结构

2.1 从less到saas

使用sass作为bootstrap的css预处理器,以前对预处理器不是很感冒,认为将简单问题复杂化了。但是通过阅读源码改变了这种认识:

2.2 代码层次

根据代码的层次,sass的源码分为如下几部分:

3. Grid

Grid用于页面的整体布局,同时css3也在起草grid布局模块。Grid也可以单独使用,bootstrap4提供了一个单独的文件(bootstrap-grid.scss)来实现栅格系统,具体来说Grid有如下特点:

4. flexbox

flexbox目前还处于草案阶段,不过高级浏览器已经开始支持,如果只考虑高版本浏览器的话,可以启动通过$enable-flex=true来启动flexbox。

flexbox是未来布局的趋势,尤其是在复杂页面布局上,总得来说具有如下几个优点:

5. 组件设计

bootstrap里面提供了大量的常用组件,可以直接使用或者简单进行二次开发,加快日常业务的开发速度。同时,有些组件需要跟js(jQuery)配合,实现组件的交互效果。

里面的组件按是否需要js,可以分为两类:

需要注意的是Cards是bootstrap4新增的组件。

6. 参考