Bootstrap4一次重大更新 几乎涉及每行代码


Posted in Javascript onMay 16, 2016

对Bootstrap来说去年8月19日是个特别的日子——不仅是项目四周年纪念日,也是经过了一年密集开发之后发布Bootstrap 4内测版的日子。Bootstrap 4是一次重大更新,几乎涉及每行代码。

1、新增功能

Bootstrap4一次重大更新 几乎涉及每行代码

Bootstrap 4中有太多重大的更新,本文不能面面俱到,下面是一些颇受关注的亮点:

从Less迁移到Sass: 现在,Bootstrap已加入Sass的大家庭中。得益于Libsass,Bootstrap的编译速度比以前更快;
改进网格系统:新增一个网格层适配移动设备,并整顿语义混合。
支持选择弹性盒模型(flexbox):这是项划时代的功能——只要修改一个Boolean变量,就可以利用flexbox的优势快速布局。
废弃了wells、thumbnails和panels,使用cards代替:Cards是个全新概念,但使用起来与wells、thumbnails及panels很像,且更方便。
将所有HTML重置样式表整合到Reboot中:在用不了Normalize.css的地方可以用Reboot了,它提供了更多选项。例如box-sizing: border-box、margin tweaks等都存放在一个单独的 Sass 文件中。
新的自定义选项:不再像上个版本一样,将渐变、淡入淡出、阴影等效果分放在单独的样式表中。而是将所有选项都移到一个Sass变量中。想要给全局或考虑不到的角落定义一个默认效果?很简单,只要更新变量值,然后重新编译就可以了。
不再支持IE8,使用rem和em单位:放弃对IE8的支持意味着开发者可以放心地利用CSS的优点,不必研究css hack技巧或回退机制了。使用rem和em代替px单位,更适合做响应式布局,控制组件大小。如果要支持IE8,只能继续用Bootstrap 3。
重写所有JavaScript插件:为了利用JavaScript的新特性,Bootstrap 4用ES6重写了所有插件。现在提供UMD支持、泛型拆解方法、选项类型检查等特性。
改进工具提示和popovers自动定位:这部分要感谢Tether工具的帮助。
改进文档:所有文档以Markdown格式重写,添加了一些方便的插件组织示例和代码片段,文档使用起来会更方便,搜索的优化工作也在进行中。
更多变化:支持自定义窗体控件、空白和填充类,此外还包括新的实用程序类等。
以上更新只是冰山一角, v4版共有1100多次commits和 12万行代码更新,这些更新可以在v4-alpha文档中查看。

2、开发计划

v4版本所有的源代码都在Github的v4-dev分支上开源。此外,还有一个v4开发和跟踪pr ,公布master的changes列表和待开发列表。大家可以贡献自己的代码,来让这个项目变得更好。

总体的开发和发布计划如下:

还会在不断改进中发布几个alpha版本; 新特性和新功能冻结之后发布两个Beta版本进行充分测试; 发布 2 个候选版本,测试是否能用于生产环境; 发布最终版本。

Slack上还有个专门讨论v4的频道,Bootstrapers可以点击这里加入。

3、支持v3

发布Bootstrap 3时,Bootstrap曾放弃了对2.x版本的支持,给很多用户造成了麻烦,同样的错误不会犯第二次。在不久的将来,开发团队还会继续修复v3的bug,改进文档。v4最终发布之后,v3的文档也不会下线。

4、One more thing……

除了发布Bootstrap 4 alpha外,官方还发布了Bootstrap主题。

Bootstrap4一次重大更新 几乎涉及每行代码这些主题耗费的精力很大,它们自己就有很多工具集,和Bootstrap本身一样。

作为开始,发布的主题有: dashboard, application,和marketing,使用multiple-use license 协议。

点击这里查看更多主题信息。

5、反馈

1)有人提到,在v3.5.5(最后的稳定版本)中,bootstrap.min.css是123KB,而在新的4.0.0alpha bootstrap.min.css 中只有88KB,值得庆祝。

2)有人反馈说dashboard主题并不是完完全全的响应式,比如在tables->order history中。

3)Bootstrap改成默认使用Sass,引起了广泛的讨论。

4)也有人表示,一个组织愿意放弃旧技术(不再支持IE8)用新技术(ES6)来重写库,值得尊敬。

如果大家还想深入学习,可以点击这里进行学习,再为大家附3个精彩的专题:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
编写跨浏览器的javascript代码必备[js多浏览器兼容写法]
Oct 29 Javascript
jquery实现metro效果示例代码
Sep 06 Javascript
js判断字符长度以及中英文数字等
Dec 31 Javascript
javascript函数声明和函数表达式区别分析
Dec 02 Javascript
简介AngularJS中使用factory和service的方法
Jun 17 Javascript
javascript+canvas实现刮刮卡抽奖效果
Jul 29 Javascript
javascript中FOREACH数组方法使用示例
Mar 01 Javascript
jQ处理xml文件和xml字符串的方法(详解)
Nov 22 Javascript
vue用递归组件写树形控件的实例代码
Jul 19 Javascript
angular4 获取wifi列表中文显示乱码问题的解决
Oct 20 Javascript
Three.js实现简单3D房间布局
Dec 30 Javascript
分享一款超好用的JavaScript 打包压缩工具
Apr 26 Javascript
JS获取元素多层嵌套思路详解
May 16 #Javascript
怎么限制input的text里输入的值只能是数字(正则、js)
May 16 #Javascript
BootStrap点击下拉菜单项后显示一个新的输入框实现代码
May 16 #Javascript
在javascript中创建对象的各种模式解析
May 16 #Javascript
Bootstrap3 input输入框插入glyphicon图标的方法
May 16 #Javascript
论Bootstrap3和Foundation5网格系统的异同
May 16 #Javascript
Javascript基础教程之比较null和undefined值
May 16 #Javascript
You might like
咖啡机如何保养和日常清洁?
2021/03/03 冲泡冲煮
php过滤危险html代码
2008/08/18 PHP
PHP 工厂模式使用方法
2010/05/18 PHP
php全排列递归算法代码
2012/10/09 PHP
shell脚本作为保证PHP脚本不挂掉的守护进程实例分享
2013/07/15 PHP
PHP数据库万能引擎类adodb配置使用以及实例集锦
2014/06/12 PHP
PHP实现服务器状态监控的方法
2014/12/09 PHP
thinkPHP中验证码的简单使用方法
2015/12/26 PHP
Ext 表单布局实例代码
2009/04/30 Javascript
jQuery 获取对象 根据属性、内容匹配, 还有表单元素匹配
2010/05/31 Javascript
容易被忽略的JS脚本特性
2011/09/13 Javascript
Javascript基础知识(二)事件
2014/09/29 Javascript
jquery ajax分页插件的简单实现
2016/01/27 Javascript
EasyUI创建对话框的两种方式
2016/08/23 Javascript
Bootstrap模态框禁用空白处点击关闭
2016/10/20 Javascript
BootStrapValidator初使用教程详解
2017/02/10 Javascript
webpack4+react多页面架构的实现
2018/10/25 Javascript
JavaScript基础之静态方法和实例方法分析
2018/12/26 Javascript
ios中视频的最后一桢问题解决
2019/05/14 Javascript
搭建一个nodejs脚手架的方法步骤
2019/06/28 NodeJs
vue仿淘宝滑动验证码功能(样式模仿)
2019/12/10 Javascript
Vue插件之滑动验证码用法详解
2020/04/05 Javascript
[05:53]敌法师的金色冠名ID"BurNIng",是传说,是荣耀
2020/07/11 DOTA
python爬取NUS-WIDE数据库图片
2016/10/05 Python
Python爬取网易云音乐热门评论
2017/03/31 Python
基于Python对象引用、可变性和垃圾回收详解
2017/08/21 Python
Python中max函数用于二维列表的实例
2018/04/03 Python
python下解压缩zip文件并删除文件的实例
2018/04/24 Python
python矩阵/字典实现最短路径算法
2019/01/17 Python
python pillow模块使用方法详解
2019/08/30 Python
Python 生成VOC格式的标签实例
2020/03/10 Python
面临毕业的毕业生自荐书范文
2014/02/05 职场文书
党的群众路线批评与自我批评范文
2014/10/16 职场文书
婚礼答谢词
2015/01/04 职场文书
浅谈MySQL之浅入深出页原理
2021/06/23 MySQL
Win10鼠标宏怎么设置?win10系统鼠标宏的设置方法
2022/08/14 数码科技