bootstrap是什么_动力节点Java学院整理


Posted in Javascript onJuly 14, 2017

Bootstrap 是由两个 twitter 员工开发并开源的前端框架,目前已经到了 2.0.4 的版本,在 Github 上面有 32517个 watch,和 6608个 fork。非常火爆,而如此火爆自然有它的道理,在我们团队的所有项目中正全面推行使用 Bootstrap,我想根据自己的实际使用体验来说明一下为什么要用 Bootsrap。

twitter 出品

首先,Bootstrap 出自 twitter,大厂出品,并且开源,自然久经考验,减少了测试的工作量。站在巨人的肩膀上,不重复造轮子。

同时,Bootstrap 的代码有着非常良好的代码规范,从中也可以学习到很多,在 Bootstrap 的基础之上创建项目,日后代码的维护也变得异常简单清晰。

基于 Less、丰富的 Mixin

如果你不知道 Sass 或者 Less 这样的 CSS 预处理技术,我只能说你实在太落伍了,建议你先去了解之。

Bootstrap 的一大优势就是它是基于 Less 打造的,并且也有 Sass版本。正因为如此,它一推出就包含了一个非常实用的 Mixin 库任你调用。

举个很简单的例子,当你平时要用到一些 css3 属性的时候,你要写不同的浏览器写不同的 -prefix-,比如圆角 border-radius :

-webkit-border-radius: 10px;
-moz-border-radius:10px;
-border-radius:10px;

但是通过 Bootstrap 给你预设好的 mixin,你直接写成这样就可以了:

@include border-radius (10px);

是不是轻松愉快?基本常用的 CSS3 mixin 都帮你整理好了,你都直接调用就可以了,在此不一一举例。 Bootstrap 是目前最好的基于 Less(Sass) 的前端框架,丰富而实用的 Mixin 应该是其最好的地方。

可以 Responsive 的栅格系统

Bootstrap 的 栅格 (Grid) 系统也很先进,整个 Grid 系统是可以 Responsive 的!

Bootstrap 已经帮你搭好了实现 Responsive Design 的基础框架,并且非常容易修改。如果你是一个新手,Bootstrap 可以帮助你在非常短的时间内上手 Responsive Design。

丰富的组件

Bootstrap 的HTML组件 和 Js组件 非常丰富,并且代码简洁,非常易于修改,你完全可以在其基础之上修改成自己想要的任何样子。这是工作效率的极大提升。

插件

另外、由于 Bootstrap 的火爆,又出现了不少围绕 Bootstrap 而开发的插件。其中最实用的莫过于 Font Awesome 了。它是一套 icon font,提供了丰富的 icon 给你选择,新的 2.0 版又根据网友的意见增加了70个新的 icon。

在现在一股有 Apple 带领的 Retina 潮流下,对图片的视网膜屏下的解决方案已经变得越来越有必要了,而在 icon 这个东西上,icon font 是完美的解决方案,不用担心分辨率的问题,因为它实际上是字体。

以上

这些就是为什么要用 Bootstrap 的原因,目前市面上没有任何其他框架可以和它相媲美,但是它就虽然是一匹好马,你还是需要花费一些时间去学习它、适应它,它在日后给你带来的便利性是无可比拟的,你会后悔自己为什么没有早点接触它。

一些题外话

我不喜欢用框架,我喜欢原生的写法

这是我在给别人推荐 Bootstrap 的时候最常听到的话,我只能说,Bootstrap 并不能帮你完成所有事情,它只是一个的框架,在这个框架上面你依旧可以任意的发挥,并且发挥得更好,但是前提是你要驾驭得了它。

如果你不够熟悉它,你确实是有时候会被它有所牵绊,但是你熟悉了之后发现了其实它没有对你进行任何限制,这需要一个过程。

是给无设计师的团队或者程序员用的

对此我真的是无力吐槽,Bootstrap 的开发者就在他的博客上抱怨过,为什么出来那么一堆完全照搬 Bootstrap 样式的网站。
记住、完全用 Bootstrap 的样式只会让人心生厌烦。

Javascript 相关文章推荐
HTTP状态代码以及定义(解释)
Feb 02 Javascript
jQuery EasyUI API 中文文档 - Parser 解析器
Sep 29 Javascript
JQuery实现倒计时按钮的实现代码
Mar 23 Javascript
js/jQuery对象互转(快速操作dom元素)
Feb 04 Javascript
js实现图片在未加载完成前显示加载中字样
Sep 03 Javascript
详谈js中数组(array)和对象(object)的区别
Feb 27 Javascript
JS实现搜索关键词的智能提示功能
Jul 07 Javascript
vue-quill-editor实现图片上传功能
Aug 08 Javascript
vue使用 better-scroll的参数和方法详解
Jan 25 Javascript
Node.js应用设置安全的沙箱环境
Apr 23 Javascript
Vue匿名插槽与作用域插槽的合并和覆盖行为
Apr 22 Javascript
Vue.js原理分析之nextTick实现详解
Sep 07 Javascript
bootstrap精简教程_动力节点Java学院整理
Jul 14 #Javascript
简单实现js轮播图效果
Jul 14 #Javascript
JS获取填报扩展单元格控件的值的解决办法
Jul 14 #Javascript
Vue学习笔记进阶篇之过渡状态详解
Jul 14 #Javascript
微信小程序开发之animation循环动画实现的让云朵飘效果
Jul 14 #Javascript
使用OPENLAYERS3实现点选的方法
Sep 24 #Javascript
vue component组件使用方法详解
Jul 14 #Javascript
You might like
php中is_null,empty,isset,unset 的区别详细介绍
2013/04/28 PHP
Laravel 5框架学习之Eloquent 关系
2015/04/09 PHP
浅谈PHP中的
2016/04/23 PHP
PHP判断JSON对象是否存在的方法(推荐)
2016/07/06 PHP
PHP多进程通信-消息队列使用
2019/03/08 PHP
PHP常用函数之获取汉字首字母功能示例
2019/10/21 PHP
jQuery之网页换肤实现代码
2011/04/30 Javascript
JQuery弹出炫丽对话框的同时让背景变灰色
2014/05/22 Javascript
浅谈jquery页面初始化的4种方式
2016/11/27 Javascript
js实现交通灯效果
2017/01/13 Javascript
详解vue mint-ui源码解析之loadmore组件
2017/10/11 Javascript
js获取文件里面的所有文件名(实例)
2017/10/17 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
2017/12/12 Javascript
JS实现将链接生成二维码并转为图片的方法
2018/03/17 Javascript
jquery.onoff实现简单的开关按钮功能(推荐)
2018/05/24 jQuery
vue如何自动化打包测试环境和正式环境的dist/test文件
2019/06/06 Javascript
[43:47]DOTA2上海特级锦标赛主赛事日 - 4 败者组第四轮#2 MVP.Phx VS Fnatic第一局
2016/03/05 DOTA
[01:34:42]NAVI vs EG 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python多线程编程(五):死锁的形成
2015/04/05 Python
python实现桌面气泡提示功能
2019/07/29 Python
python装饰器的特性原理详解
2019/12/25 Python
python实现低通滤波器代码
2020/02/26 Python
Python在后台自动解压各种压缩文件的实现方法
2020/11/10 Python
MAC Cosmetics巴西官方网站:M·A·C彩妆
2019/04/18 全球购物
澳大利亚100%丝绸多彩度假装商店:TheSwankStore
2019/09/04 全球购物
介绍一下Prototype的$()函数,$F()函数,$A()函数都是什么作用?
2014/03/05 面试题
库房保管员岗位职责
2014/04/07 职场文书
祖国在我心中演讲稿300字
2014/05/04 职场文书
计划生育工作汇报
2014/10/28 职场文书
机关班子查摆问题及整改措施
2014/10/28 职场文书
道德模范事迹材料
2014/12/20 职场文书
营业员岗位职责
2015/02/11 职场文书
爱心募捐通知范文
2015/04/27 职场文书
求职信如何撰写?
2019/05/22 职场文书
python实现腾讯滑块验证码识别
2021/04/27 Python
Nginx+Windows搭建域名访问环境的操作方法
2022/03/17 Servers