1. 程式人生 > >Bootstrap 4-alpha 初體驗

Bootstrap 4-alpha 初體驗

What is Bootstrap

第一句話就是廢話了,作為新時代有理想有節操的開發人員無人不知無人不曉。可能就是熟悉程度因為各種原因不盡相同,有人只是知道他大概是個什麼東西,有些人可能基本可以使用,有些人可能深有體會。但是糾正一下一個比較常見的問題,可能我這個人比較矯情,Bootstrap是一個單詞,不要寫成了BootStrap,還有重音在第一個字母http://fanyi.baidu.com/#en/zh/bootstrap,尊重作者。

Bootstrap是新時代Web開發前端展示整體的解決方案,也可以說是框架,以模組化元件化(也可以說是OOP)的編碼方式給了傳統的網頁開發人員一記響亮的耳光。讓大家開始注重前端的架構和工作流,注重網頁再也不是懟程式碼實現效果就完事了。說白了就是:我們需要實現最終的效果(否則老闆那裡說不過去),只是在這個實現的過程中體現的更優(zhuang)雅(bi)一些。當然這些所謂的優雅並不是一味的提高B格,顯得與眾不同,而真的是時代需要。扯遠了,今天小有點時間,一起來看看前幾天剛釋出的Bootstrap-v4-alpha版。

Installation

對於前端的包安裝的方法各式各樣,這裡簡單提一下:

  1. Git
    1. 首先確保機器上安裝了GIT,確保終端中有git命令:
      1. windows使用者安裝http://git-scm.com/download/win 並配置環境變數;osx直接略過;
    2. 開啟終端或者命令列工具鍵入以下命令:
      1. -b引數是指定一個分支,由於現在還沒有切換到主分支上,所以需要手動指定一下
      2. 網路不給力fuck,但願93號過後可以好點
  2. Bower(推薦)
    1. 前端專業加包或者叫依賴管理工具,類似與NuGet或是maven,它本身是Node的一個包,所以需要提前安裝一下
    2.  在全域性環境中安裝完Bower後開啟終端或命令列鍵入:
      1. bower install bootstrap#4.0.0-alpha
      2. 這裡注意#4.0.0-alpha是必須的,預設是當前最新的正式版本3.3

Features

  1. 原始碼從Less變為了Sass
    1. 這點沒什麼好說的,之前3.x的時期已經有Sass的版本,不可否認Sass越來越流行。前端行業重複造輪子的情況是很普遍的,呼籲儘量不要重複造輪子,用別人的輪子沒什麼可恥的,可恥的是把別人的輪子拿過來改改就造一個新輪子。感覺上大家都在造輪子讓生態圈錚錚向榮,但是也會讓初學者茫然,比如像選一個任務框架,用grunt還是用gulp?
  2. 可深度自定義:
    1. 3.x中我們就可以通過修改專案中的variables.less檔案去自定義,比如原本的12Grid很多人都覺得不夠,那我們就可通以過@grid-columns:變數去修改。
    2. 4.0中這一點更突出,可以自定義元件的各種樣式,比如是否有陰影圓角或是漸變效果、是否使用flexbox等等,也是通過專案中_variables.scss中定義。
  1. FlexBox
    1. FlexBoxCSS提供了一個更簡單便捷的佈局方式,取代咱們之前在CSS中常見的float,display:table的方式,這麼牛掰的功能自然不支援IE10以下版本,只不過以後也就不存在這個問題,也可以說微軟間接成就了前端大行其道的現狀,哈哈!關於FlexBox
    2. 傳送門:http://www.w3cplus.com/css3/a-guide-to-flexbox.html
    3. 不重複造輪子(其實我也是不太熟悉這個)
  2. 全面使用rem
    1. 這是一個長度單位,在之前的版本一直沒有使用過,跟em類似,em單位是相對當前容器的font-size,一個單位的em=當前容器定義的字型大小,常見案例:中文段落首行兩個單位的縮排,2em搞定。
    2. 而rem是相對於根容器font-size來確定的,rem應該就是root em簡寫(不確定),如果整個網頁都是通過rem的單位設定尺寸,只要在跟容器(body)設定一個具體的font-size為畫素單位,而且當這個畫素值變化整個頁面所有用到rem的地方都會等比例變化,便於維護。
    3. 相關連結:http://www.w3cplus.com/css3/define-font-size-with-css3-rem
  3. 放棄IE8的支援,也就是以後只相容IE8以上。從產品角度可以理解,個人情感:完全放棄IE吧。
  4. 重構了JS元件,功能上沒有變化;
  5. 將wells、thumbnails和panels統一改為cards
  6. 樣式上細微變化;
  7. 。。。。。。。待續

Usage

今天關於Bootstrap使用肯定沒時間鋪開來說了,這裡簡單介紹一下他的專案結構和編譯(原始碼是Scss編寫,而且是單獨元件的方式編寫),現在還沒有單獨發行編譯過後的包,所以難免需要我們手動編譯,很簡單:

Compilation

  1. 先定位到Bootstrap所在的目錄:
  1. 鍵入:
    1. npm install 回車
    2. Node 的包管理工具會根據配置檔案自動安裝編譯所需要用到的包 ,國內使用者可以通過淘寶的cnpm加速此過程
  1. 鍵入:
    1. grunt 回車
  1. 專案目錄下的dist中為編譯過後的結果;
  2. 也可以使用grunt watch監視原始碼的變化自動編譯;

小結

現在這個時代思想保守,技術守舊的產品自然是最早離開我們的,那開發人員呢?也不是說為了不被淘汰就去追新技術,最起碼在思想上要要求自己進步,抓得住技術方向的靈魂。鄙人不才,想拋磚引玉,希望部落格園的各位大神多關注前端方向新動態,多多發表個人想法,促進國內前端生態圈

相關推薦

Bootstrap 4-alpha 體驗

What is Bootstrap? 第一句話就是廢話了,作為新時代有理想有節操的開發人員無人不知無人不曉。可能就是熟悉程度因為各種原因不盡相同,有人只是知道他大概是個什麼東西,有些人可能基本可以使用,有些人可能深有體會。但是糾正一下一個比較常見的問題,可能我這個人比較矯情,Bootstrap是一個單詞

arcgis jsapi 4.10體驗

沒想到第1000篇文章是有關GIS的。雞毛蒜皮,一點也不夠大氣。 體驗就是坑。 現在專案前端用到的arcgis jsapi指明要用4.10了。從3.19直接跳躍到4.10。結果就是各種不習慣,各種坑。我去,這變化也忒大了吧。雖然是同一家公司,但一定是另一撥程式設計師搞的,各種看前

SAP S/4 HANA - 記錄體驗

作者 .com 停止 領域 世界 來看 我們 審批 http 這些天,我在構思一門培訓課程,需要用到 SAP S/4 HANA 的環境,於是就琢磨著搭建一套自己的環境。現在畢竟是雲的時代,SAP 為了推廣自己的產品,也給出了看起來挺不錯的試用產品。我抱著試試看的心理,開啟了

Ubuntu16.0.4 Flask+Postgis(ST_AsMVT) 向量切片體驗

MVT MVT(Mapbox Vector Tile):傳送門 本文中用到的PostGIS函式 ST_AsMVT ST_AsMVTGeom ST_RemoveRepeatedPoints ST_MakeEnvelope 參考資料: PostGIS常用

Lucene7.4 體驗

前言 本文的簡要內容: Lucene簡介 體驗Lucene Demo Lucene 核心類介紹 Lucene 索引檔案格式 Lucene簡介 Lucene是目前最流行的Java開源搜尋引擎類庫,最新版本為7.4.0。Lucene通常用於全文檢索,

bootstrap體驗

首先bootstrap框架是基於h5,專案中每個頁面都要參照如下的樣式 <!DOCTYPE html> <html lang="zh-CN"> ... </html> bootstrap遵循移動裝置優先原則 <meta na

Bootstrap體驗之匯入模板完成第一個例項】

首先在Bootstrap中文網中找到導航欄,點選元件 可以看到頁面右邊提供了很多元件 我們隨便選一個,點選導航條,下拉可以看到關於例項的程式碼 我們將程式碼複製到webstorm裡,直接新增到<body>標籤中,什麼都不用再加然後點選執行,發現效

Angular 2 版本的 ng-bootstrap 體驗

最近 angular-ui 團隊終於正式釋出了基於 Angular 2 的 Bootstrap 介面庫ng-bootstrap , 工作中一直用 AngularJS 1.x 的UI Bootstrap , 因此對這個 ng-bootstrap 也是很感興趣, 第一時間進

golang 體驗 - 令人驚嘆的語法 - defer.4 - defer 對宿主函數返回值的影響

函數返回值 info 結果 bubuko img 圖片 png inf mage defer 函數可以影響宿主函數的返回值 看代碼: 調用: 輸出: 結果又讓人意外了。 coo1:因為傳引用,return 時 i = 100, return 返回的也是 100,ret

小程序體驗:手把手教你寫出第一個小程序(一)

輸入框 個人 創建 公測 快速 nsh 成功 too 調用 本文筆者將根據quick start中的範例代碼,帶大家簡單地剖析一下小程序的運行方式,並介紹小程序開發中一些通用的特性,帶著大家一步步寫出自己的小程序。 適用對象:前端初學者,對小程序開發感興趣者 tip

vue.js2.0 自定義組件體驗

最新 解綁 然而 blog bool template 警告 rem 組件 理解 組件(Component)是 Vue.js 最強大的功能之一。組件可以擴展 HTML 元素,封裝可重用的代碼。在較高層面上,組件是自定義元素, Vue.js 的編譯器為它添加特殊功能。在有些

weblogic體驗

xsd 體驗 target java語言 註意 true 中間件 鼠標 使用 之前一直是用的tomcat,由於業務需要,需要使用weblogic部署項目,在這裏大概的記錄一下 weblogic是oracle出品的WEB容器,確切的說是一個基於JavaEE架構的中間件,使用

python體驗

list python 字典 python初體驗:1.python種類 CPython 代碼 -> C字節碼 -> 機器碼 (一行一行) pypy 代碼 -> C字節碼 -> 機器碼 全部轉換完 -> 執行 其他Python 代碼 -&g

Android逆向分析體驗

目錄 搜索 比較 .com -1 動態調試 總結 為我 修改 一、 準備知識 1. 懂Java Android開發。 2. 懂NDK ,C 語言 Android 動態鏈接庫.SO開發。 3.

【Spark深入學習 -15】Spark Streaming前奏-Kafka體驗

rod htm 新的 callback tails 包括 -c 舉例 清理 ----本節內容------- 1.Kafka基礎概念 1.1 出世背景 1.2 基本原理 1.2.1.前置知識 1.2.2.架構和原理 1.2.

vue.js 體驗— Chrome 插件開發實錄

原創 控件 https ext 方案 程序實現 瀏覽器中 display 博客 歡迎大家關註騰訊雲技術社區-博客園官方主頁,我們將持續在博客園為大家推薦技術精品文章哦~ 作者:陳緯傑 背景 對於經常和動畫開發打交道的開發者對於Animate.css這個動畫庫不

1Python全棧之路系列之Django體驗

編寫程序 online 網絡開發 程序員 堪薩斯 Python全棧之路系列之Django初體驗Django不得不說在Python中是一個非常強大的全棧框架,而且入門也比較簡單,只要你學完了基本的Django知識,接著再做一兩個項目,不大不小就成,然後你再去學其它的框架你會發現,在那些小而美

flask+jsonp跨域前後臺交互(接口體驗

script keys 返回 == 方法 png 前後臺 true run 1 # -*- coding: utf-8 -*- 2 from flask import Flask, jsonify 3 import psutil, time,json 4 5

Hibernate_01_體驗

基礎上 font cal close mysq getprop build nec address Hibernate的一個小例子(慕課網教程整理的代碼): 首先在eclipse--help--Eclipse MarketPlace中搜索“jboss Tool” 導入hi

zTree體驗(一)——小試牛刀

插件 root tracking per margin 接受 dsm 獲取 實現 zTree 是一個依靠 jQuery 實現的多功能 “樹插件”。優異的性能、靈活的配置、多種功能的組合是 zTree 最大長處。 ——zTree官網 zTree v3