Bootstrap 4正式发布还有意义吗?
历经三年开发,前端框架Bootstrap 4正式发布了。然而今天的Web世界已经和当初Mark Otto发布Bootstrap时的情况大为不同,一些开发者由此质疑它的更新是否还有意义。
V4版本的主要更新有:
- 改进的网格系统(默认情况下为Flexbox)
- 现在使用Sass(取代了Less)
- 不支持IE8、IE9和iOS 6
- 重写JavaScript插件
- 现在使用rem取代了px。
准备从V3版本升级的开发人员需要先做测试,可能还要解决一些问题。新版整体上和旧版接近,但多了一些突破性的变化。一份迁移指南列出了变化内容的详情。
Bootstrap的优势之一是其网格系统。这一系统为网页提供了一种可声明的方式来渲染网格系统中的内容,不需要额外的步骤就能使流式内容兼容桌面端和移动端。Bootstrap 4的网格系统使用的是几乎所有的现代浏览器都支持的flexbox。因为引入了这一更新等原因,新版只支持IE10 以上和iOS7 以上。如果项目仍需兼容旧式浏览器,开发人员就要继续使用Bootstrap 3。但是,Bootstrap 3的维护已经在2016年结束了。
Bootstrap最初于2011年发布,当初是作为Twitter的一个产品诞生的,号称是“世界上最流行的HTML、CSS和JS库”,但其增长趋势如今似乎已经到头了。Dan Tao等人曾批评Boostrap的紧耦合和缺乏语义的缺陷:
最早看来很棒的一堆开发组件,如今演变成了堆积如山的技术债务。开发者的HTML充斥着带有Bootstrap特定属性的深度嵌套结构。
V4的第一个alpha版本发布于2015年8月,两年后发布了第一个beta版本。但Bootstrap 4是否生不逢时?它的网格系统是最大的卖点之一,但主流浏览器普遍采用CSS 网格,意味着Bootstrap 4新引入的,基于flexbox的网格已经过时了。
Natalya Shelburne是纽约时报的一位软件工程师,她认为CSS网格才是未来:
CSS网格不是什么黑客工具,它是一个很好的web布局工具。什么都不用安装,也不需要预处理器,更用不着为了理解它的运作机制而绞尽脑汁。
此外,Ryan Oglesby则认为,使用基于组件的样式技术(如经常与React或Vue.js一起使用的技术),就不需要传统的“全局CSS”技术了:
在React或Vue.js等UI库的帮助下,现代Web应用程序体系结构已经采用了松耦合,高内聚的组件,这些组件通常将HTML,CSS和JavaScript放在同一个文件中。
当然,如果开发者想要做一些美观漂亮、运行迅速的内容,Bootstrap的JavaScript插件(比如Popover和Form控件)仍是首选的框架。
Bootstrap 4正式发布还有意义吗?的更多相关文章
- Bootstrap4 正式发布
历经三年开发,前端框架Bootstrap 4正式发布了.然而今天的Web世界已经和当初Mark Otto发布Bootstrap时的情况大为不同,一些开发者由此质疑它的更新是否还有意义 1.V4版本的主 ...
- Ruby Rails学习中:网站导航,Bootstrap和自定义的CSS,局部视图
添加一些结构 一.网站导航 1.添加一些结构后的网站布局文件 打开文件:app/views/layouts/application.html.erb 简单介绍一下,添加的代码: 我们从上往下看一下这段 ...
- HTML Imports
为什么需要导入? 先想想你在 web 上是如何加载不同类型的资源.对于 JS,我们有 <script src>.<link rel="stylesheet"> ...
- Twitter Bootstrap 3.0 正式发布,更好地支持移动端开发
Twitter Bootstrap 3.0 终于正式发布了.这是一个圆滑的,直观的和强大的移动优先的前端框架,用于更快,更容易的 Web 开发.几乎一切都已经被重新设计和重建,更好的支持移动端设备. ...
- bootstrap栅栏系统css中的col-xs-*、col-sm-*、col-md-* 的意义以及 bootstrap一个标签中,同时有 col-xs , col-sm , col-md , col-lg的理解
摘要: bootstrap栅栏系统css中的col-xs-*.col-sm-*.col-md-* 的意义: .col-xs- 超小屏幕 手机 (<768px) .col-sm- 小屏幕 平板 ( ...
- 利用Bootstrap快速搭建个人响应式主页(附演示+源码)
1.前言 我们每个程序员都渴望搭建自己的技术博客平台与他人进行交流分享,但使用别人的博客模板没有创意.做网站后台的开发人员可能了解前端,可是自己写一个不错的前端还是很费事的.幸好我们有Bootstra ...
- 基于DDDLite的权限管理OpenAuth.net 1.0版正式发布
距离上一篇OpenAuth.net的文章已经有5个多月了,在这段时间里项目得到了很多朋友的认可,开源中国上面的Star数接近300,于是坚定了我做下去的信心.最近稍微清闲点,正式推出1.0版,并在阿里 ...
- bootstrap表格分页
<script src="~/Scripts/jquery.min.js"></script> <script src="~/Scripts ...
- AppBox_v2.0完整版免费下载,暨AppBox_v3.0正式发布!
文章更新: AppBox v6.0中实现子页面和父页面的复杂交互 AppBox 是基于 FineUI 的通用权限管理框架,包括用户管理.职称管理.部门管理.角色管理.角色权限管理等模块. AppBox ...
随机推荐
- 2017第十三届湖南省省赛A - Seating Arrangement CSU - 1997
Mr. Teacher老师班上一共有n个同学,编号为1到n. 在上课的时候Mr. Teacher要求同学们从左至右按1, 2, …, n的顺序坐成一排,这样每个同学的位置是固定的,谁没来上课就一目了然 ...
- 给PXC集群加密
MySQL的复制时明文的,不管是集群的复制还是IST/SST,直接通过抓包就可以抓取数据. 生成证书 直接使用 mysql_ssl_rsa_setup mysql_ssl_rsa_setup --da ...
- Prometheus监控学习笔记之PromQL操作符
0x00 二元运算符 Prometheus 的查询语言支持基本的逻辑运算和算术运算.对于两个瞬时向量, 匹配行为可以被改变. 算术二元运算符 在 Prometheus 系统中支持下面的二元算术运算符: ...
- Python3 hasattr()、getattr()、setattr()函数简介
Python3 hasattr().getattr().setattr()函数简介 一.hasattr(object, name) 判断object对象中是否存在name属性,当然对于python的对 ...
- 【题解】Luogu P1972 [SDOI2009]HH的项链
原题传送门 莫队入门题 我博客里对莫队的介绍 很多人说这题卡莫队,但窝随便写了一个程序就过了qaq(虽说开了氧化) 我们在排序询问时,普通是这样qaq inline bool cmp(register ...
- VScode 好用插件集合(一)
VScode 好用插件集合(一) 什么是VScode Visual Studio Code (简称 VS Code / VSC) 是一款免费开源的现代化轻量级代码编辑器,支持几乎所有主流的开发语言的语 ...
- 02: http
1.1 http简介 1.什么是http 1. HTTP是一个客户端和服务器端请求和应答的标准(TCP) 2. 设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法 2.http报文格式 ...
- Linux启动报:UNEXPECTED INCONSISTENCY: RUN fsck MANUALLY问题解决
现象: 在此界面输入下root的密码.会进入到修复模式 在修复模式下,输入命令fsck –y /dev/mapper/vg_swnode1-lv_root 这个后面跟的路径就是你上面提示出错的那个路 ...
- tp5 中使用自定义扩展类和函数
如果是要引用其它控制器里定义的方法参考:https://www.cnblogs.com/efyefy/p/8796014.html 如果在extend定义的类和函数默认是在全局命名空间下的 new \ ...
- 【VNC】修改VNC分辨率大小
[VNC]修改VNC分辨率大小 VNC的分辨率过小有可能导致图形化界面操作过程中遇到"确认键或取消键"无法点击,分辨率过高又可能导致低分辨率客户端显示器无法显示.本文给出两种调整V ...