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文檔 中查看。