Twitter BootStrap:前端框架利器

2020-12-25 站長之家

Web前端開發者每天都與HTML、CSS、JavaScript打交道,然而不少人都是周而復始地寫模板、樣式和交互效果,並沒有想過如何將這些重複的工作整合在一起。Twitter推出的Bootstrap能夠幫助Web前端開發者擺脫這種重複勞動。

Bootstrap的歷史

為了應對複雜的需求,早期的Twitter前端工程師在開發網站時幾乎採用了所有自己熟悉的前端庫。造成了網站維護困難、擴展性不強、開發成本高等問題。此時BootStrap被提上了日程。Twitter要求前端工程師完全依靠這一單一框架進行前端開發。

Twitter 在2011年8月將其開源,並在2012年2月3日發布了2.0版。在GitHub上,這個項目已有擁超過2萬位關注者和4000個分支。 Bootstrap的設計者、著名前端工程師Mark Otto這樣寫道:「Bootstrap是我和Jacob Thornton編寫的一個前端工具箱,目的是為了幫助設計師和Web前端開發人員快速有效地創建一個結構簡單、性能優良、頁面精緻的Web應用。它使用 了最新的瀏覽器技術,可以提供精緻的網頁排版方式以及表單、按鈕、表格、網格柵格化、導航等諸多元素。」Bootstrap的內置樣式繼承了Mark Otto簡潔亮麗的設計風格,任何開發團隊都能使用它提供的HTML模板、CSS樣式和jQuery組件來布署或者重建一個外觀漂亮的頁面應用。

BootStrap 2的新特性

BootStrap 2在原有特性的基礎上著重改進了用戶的體驗和交互性,比如新增加的媒體展示功能,適用於智慧型手機上多鍾屏幕規格的響應式布局,另外新增了12款jQuery插件,可以滿足Web頁面常用的用戶體驗和交互功能。

BootStrap 2的運用

Bootstrap的文件結構

讀 者可以直接從GitHub下載到Bootstrap源碼,本地解壓後可以看到這樣的目錄結構:docs、img、jquery-ui- bootstrap、js和less。其中最為重要的是「docs」下的CSS樣式文件,「less」中的編譯文件和「js」下的jQuery插件。

Bootstrap的安裝

關於如何應用提取出來的文件大致有兩步:第一是如何安裝Bootstrap的基本樣式,第二是如何調用Bootstrap的jQuery插件,我們首先來看樣式的安裝。

樣式的安裝有多種方法,圖1展示的是一種常用的調用樣式方法「link」。

這 裡有兩個關鍵點,其中「bootstrap.css」是Bootstrap中的基本樣式文件,只要使用Bootstrap就必須調用這個文件。而 「bootstrap-responsive.css」則可以根據你的愛好來選擇,如果想讓項目具有響應式布局的效果,就必須要調用這個樣式文件,而且調 用必須遵循先後順序,「bootstrap-responsive.css」必須放置在「bootstrap.css」之後,否則便不具有響應式布局功 能。而最後的「style.css」是項目中的自定義樣式,用來覆蓋Bootstrap中的一些默認設置,便於開發者定製。

「CSS」樣式安裝完後,就可以進入「js」的調用,方法很簡單,只需把想要的jQuery插件按照與上一步相似的方式加入到代碼中。

Bootstrap 2的模塊

BootStrap 2的模塊從大的方面可以分為布局框架、頁面排版、基本組件、jQuery插件以及變量編譯的Less幾個部分。與第1版相比,Bootstrap 2增加了多個新模塊,比如布局框架中的「響應式布局」,頁面排版中的「ICON」,基本組件中的「進度條」,而jQuery插件從以前的5個效果增加到 12個,完全可以滿足項目常用的交互效果。下面來簡單了解一下Bootstrap 2中各模塊的功能。

頁面布局

布局在每個項 目中都必不可少,Bootstrap在960gs的基礎上擴展了一套優秀的Grids布局,而在「響應式布局」中有更強大的功能,能讓網格布局適應各種設 備。使用也相當簡單,只需要按照HTML模板應用,就能輕鬆地構建你所需的布局效果。此外,改變模板中的類名,就能實現不同的布局風格。比如常見的「固定 布局」,只需要在HTML中添加「container」類名;而要實現「流體布局」,只需要在HTML中添加「container-fluid」類名。 Bootstrap還為開發者設計了「Responsive」, 令布局框架更為出色。開發者可以在此基礎上進行任何樣式的覆蓋,從而實現理想中的響應式設計。

頁面排版

頁面排版的好壞直接影 響產品風格,說直白點就是好不好看。在Bootstrap中,頁面的排版都是從全局的概念上出發,定製了主體文本、段落文本、強調文本、標題、Code風 格、按鈕、表單、表格等格式。而Bootstrap 2中又添加了幾個新亮點。其一是「Code」使用了「Google Prettify」插件,增強了代碼的閱讀體驗;其二在「按鈕」中增加了組合、下拉、圖標等效果,如圖2所示。

第三就是「Icon」的使用,Bootstrap在「Icon」部分採用了「Sprites」技術,為大家準備了上百種常用的「Icon」圖標應用。

說 起Icon,這裡有必要在向讀者推薦一個從BootStrap擴展出來的Font Awesome項目。它是Dave Gandy在Bootstrap的基礎上擴展出來的一個Icon主題,最大的特點在於,整套圖標中沒有運用任何圖片。大家可能會覺得奇怪,沒有圖片如何制 作Icon?難道是通過純CSS編寫的嗎?是的,Font Awesome項目中主要運用了CSS3的「@font-face」和「偽元素」一起實現。

要使用Font Awesome,首先需要在伺服器上安裝「fontawesome-webfont」字體,接著在樣式中通過「@font-face」來啟用這些字體:

具備了上面的條件後,就只要樣式中調用「FontAwesome」字體,並在「偽類元素」中使用對應的「字符編碼」:

這樣一來,就不採用任何圖片實現Icon效果,一起來看一個效果圖吧。

基本組件

基 本組件是Bootstrap 2的精華之一,裡面都是開發者平時需要的交互組件。比如「網站導航」、「Tabs」、「工具條」、「麵包屑」、「分頁欄」、「提示標籤」、「產品展示」、 「提示信息塊」和「進度條」等。這些組件都配有「jQuery」插件,運用它們可以大幅度提高用戶的交互體驗,使產品不再那麼呆板無吸引力。說了這麼多種 組件,具體該如何使用?下面我以常見的「Tabs」組件為例,向大家展示使用方法。

要想使用BootStrap基本組件,必須滿足三點:第一,最基本的HTML結構要對號;第二,需要Bootstrap中的「jQuery」插件提供相應功能;第三,在項目中對應的「Tabs」元素上啟用「Tabs」功能。

1. HTML Markup

2. 調用jQuery插件

3. 開啟「Tab」功能

對於其他組件,使用方法相近,在此不做贅述。

jQuery插件

Bootstrap中的jQuery插件主要用來幫助開發者實現與用戶交互的功能,在第1版中,Bootstrap就為大家提供了6種常見的插件。

1.彈出框(Modals):在JavaScript模板基礎上自定義的一款流線型、靈活性極強的彈出蒙板效果的插件;

2.下拉框(Dropdowns):Bootstrap中一款輕巧實用的插件,可能幫助你製作具有下拉功能,比如下拉菜單、下拉按鈕、下拉工具條等效果;

3.滾動條(Scrollspy):實現滾動條位置的效果,比如在導航中有多個標籤,用戶點擊其中一個標籤,滾動條會自己動定位到導航中標籤對應的文本位置;

4.Tabs:這個插件能夠快速實現本地內容的轉換,動態切換標籤對應的本地內容;

5.提示工具(Tooltips):是一款優秀的jQuery插件,無需加載任何圖片,採用CSS3新技術,動態顯示「data-attributes」存儲的標題信息;

6.提示面板(Popover):在Tooltips的插件上擴展,用來顯示一些疊加內容的提示效果,此插件需要配合Tooltips一起使用。

Bootstrap 2在前面6種插件的基礎上又新增加了6種jQuery插件:

1.警報信息(Alert):用來關閉警報信息塊;

2.按鈕(Button):用來控制按鈕的狀態或更多組件功能,比如「複選框」、「單選按鈕」以及「載入狀態條」等;

3.手風琴(Collapse):一款輕巧實用的手風琴插件,可以用來製作摺疊面板或菜單等效果;

4.幻燈片(Carouse):實現圖片播放功能的插件;

5.補全文本(Typeahead):可以記住文本框輸入的文本,下次輸入時可以自動補全;

6.動畫效果(Transitions):BootStrap使用這個插件,為一些動效果增加了過渡性,使動畫效果更細膩、生動。

上面簡單介紹了Bootstrap 2中的jQuery插件,至於如何使用,還需要根據Bootstrap所提供的文檔,以及各插件的參數,具體問題具體分析。因為只有充分了解,才能靈活運用。

變量編譯Less

Less 是一個動態CSS語言框架,基於自己的JS引擎或者伺服器端對傳統的CSS進行了動態的擴展,使得Less具有更強大的功能和靈活性。基於Less,我們 編輯CSS就可以像使用程式語言一樣,定義變量、嵌入聲明、混合模式、運算等。Bootstrap中有一套編輯好的Less框架,開發者可以將其應用到自 己的項目,也可以通過less.js、Less.app或Node.js等方法來轉譯Less文件。Less文件一旦編譯,Bootstrap框架就僅包 含CSS樣式,這意味著沒有多餘的圖片、Flash之類元素。Less好處是利於編寫,但缺點是只適合用於開發一些簡潔的CSS樣式。舉個簡單的例子,如 果你想為多個樣式設置同一個顏色,可以這樣寫。

編譯後的CSS如下所示:

以上代碼只是最簡的Less應用示範。除了變量,還可以在CSS中進行數學運算、傳參、文件相互引用、規則嵌套等。可以想像,這種編寫CSS的方式會為前端開發帶來多大的改變。無論是從靈活性、擴展性還是可維護性上,Less都讓CSS開發效率有了大幅提升。

Bootstrap的jQuery UI

Bootstrap的jQuery UI其實是從框架中衍生出來的一個jQuery UI主題,受到Twitter項目的啟發,Addy Osmani也在Bootstrap的基礎上整理出一個jQuery UI Bootstrap主題。

jQuery UI Bootstrap除了包含Bootstrap各個方面功能之外,還在其基礎上補充了以下特性:動態添加Tabs、日期範圍選擇組件、自定義文件載入框、滑動塊、日期控制項。

BootStrap 2案例

通過前面的介紹,你可能已經體會到Bootstrap的強大,但能否運用到生產項目中,可能還存有疑問。

目 前使用Bootstrap的著名案例有NASA和MSNBC的Breaking News。此外很多CMS也在運用Bootstrap框架,比如大家熟悉的WordPress、Drupal等。如果你還想了解更多Bootstrap案 例,可以參考Wrapbootstrap.com。

BootStrap 2的優勢和缺點

如今的Bootstrap已包括了幾十個組件,每個組件都自然地結合了設計與開發,具有完整的實例文檔,定義了真正的組件和模板。無論處在何種技術水平的開發者,也無論處在哪個工作流程中,都可以使用Bootstrap快速、方便地構建開發者喜歡的應用。

難能可貴的是,Bootstrap依舊本著「並行開發」、「作為產品的風格指南」和「迎合所有的技能水平」的原則幫助開發者解決實際問題,不斷完善自己,吸引更多人選擇Bootstrap應用於自己的項目中。

然 而古人云「萬物相生相剋」,有好就有壞,Bootstrap也是一樣。對於在國內的開發者來說,最可怕的就是IE兼容問題。目前Bootstrap對 IE6到IE8的支持都不友好。另一個缺點是,採用Bootstrap的模板,網站結構時常會顯得臃腫。此外,覆蓋一些樣式時會造成代碼冗餘。但與其他前 端框架相比,我個人覺得Bootstrap的缺點僅此而以,至於其他方面希望有機會與大家一起探討和學習。

總結

Bootstrap是一套前端開發利器。它可以幫助我們加速項目開發,讓我們身處在一個完備的系統中,擁有一致的設計和實現方法。不需要在外觀上花費過多時間,使開發者能將精力集中於更重要的功能。

Bootstrap將改變我們的合作方式與開發進程,任何人都可以基於Bootstrap建立可擴展的前端工具包,或者在它的基礎上啟動屬於自己的框架。

如需轉載,煩請註明出處:https://www.w3cplus.com/css/twitter-bootstrap.html

相關焦點

  • 開源前端框架Bootstrap中文翻譯版上線
    據wrongway稱,翻譯Bootstrap的初衷是為其網站選擇一款能快速開發的前端框架,為了更廣泛的分享推廣Bootstrap,因此發布了中文版。簡介:(infoq)Bootstrap是著名的社交網站、微博的先驅Twitter在2011年8月推出的開源WEB前端框架,集合CSS和HTML,使用了最新的瀏覽器技術,為快速WEB開發提供了一套前端工具包,包括布局、網格、表格、按鈕、表單、導航、提示等等。
  • 入門bootstrap,簡潔清新的前端框架
    最近 寫項目用到bootstrap確實使用起來很方便,而且風格簡潔,很適合自己做項目時用來當作前端框架。下面是bootstrap介紹:2011年,twitter的「一小撮」工程師為了提高他們內部的分析和管理能力,用業餘時間為他們的產品構建了一套易用、優雅、靈活、可擴展的前端工具集--BootStrap。
  • 前端框架bootstrap和layui有什麼區別
    做前端的小夥伴肯定都用過或聽過Bootstrap和LayUi,小編我雖然不是專業的前端程式設計師,但是對於前端還是頗有研究,閒暇事情會經常研究各種前端框架的源碼,一來可以借鑑優秀框架的思想,二來可以順便學習可以提高自己,好了,不廢話了。
  • 前端框架bootstrap4.4入門教程,使用方法實例響應式布局實戰
    bootstrap是我最喜歡的前端框架,沒有之一,當前的最新版本是bootstrap4.4.1,和之前的3.X版本相比較有較大的變化,不過都是屬於各種標籤的分離,方法還是一樣的,在網上各種教程雖多,但是對於入門還不是不夠,很多入門教程講得雲裡霧裡,看不懂到底在說些什麼。我覺得使用具體的實例來結合相關的標籤使用才能真正的加深理解。
  • 推薦10 款基於 Bootstrap 框架的擴展
    Bootstrap是快速開發Web應用程式的前端工具包。
  • 前端插件之Bootstrap Dual Listbox使用
    工欲善其事,必先利其器對於很多非專業前端開發來說寫頁面是非常痛苦的,藉助框架或插件往往能夠達到事半功倍的效果,本系列文章會介紹我在運維系統開發過程中用到的那些順手的前端插件,如果你是想寫XX管理系統的學生、或是需要獨自做Dashboard的後端工程師、亦或是像我這樣半吊子的開發加運維,那麼這個系列的文章你一定不要錯過Bootstrap Dual Listbox
  • 大神帶你了解Bootstrap框架技術!
    進入 Bootstrap 的網站(getbootstrap.com/),我們可以看到這樣一句話:Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web.
  • 前端框架 Bootstrap 5.0 alpha 發布 - OSCHINA - 中文開源技術...
    該團隊表示,刪除 jQuery 是框架多年來最大的變化之一。十多年來,jQuery 允許訪問複雜的 JavaScript 行為,但是隨著時間的推移,前端開發工具和瀏覽器支持有了新的進步,因此這變得不再需要。刪除 jQuery 依賴項將導致文件更小並提高頁面加載速度。
  • The Best BootStrap Resources - 程序人生 提供數據深度挖掘服務
    轉自:http://www.w3cplus.com/source/the-best-bootStrap-resources.htmlTwitter BootStrap是一款優秀的前端的框架,稱得上是前端的一個框架利器。
  • 學習寫個網站(4)-Bootstrap學習1
    Bootstrap,就是前端框架,可以直接使用一些設定的樣式,用的時候直接賦值class就行。它的class對css進行了封裝。
  • 前端開發大盤點:2015最流行前端框架TOP20
    隨著Web 越來越規範和標準的統一,Web組件化技術不斷革新以及移動端開發不斷升華的今天,我覺得有必要把過去一年幫助過我或朋友們的優秀開源前端框架做個盤點,希望這些與時俱進,具有行業代表性的項目能夠越來越好,幫助到更多的前端開發者們。此榜單根據github上star數作為排名依據,一個人力量有限,如果收集有遺漏歡迎補充。
  • 用Vue 和Bootstrap 4 來構建Web前端界面
    儘管前端程序現在發展迅速,各種框架層出不窮,但是對廣大非前端碼農來說構建Web界面的最好的選擇仍然還是Bootstrap 4。但是Bootstrap依賴於已經嚴重過時,被拋棄的jQuery組件,那麼如何解決這個問題就迫在眉睫了。
  • 編程菜鳥之怎樣用Bootstrap前端框架結合ThinkPHP框架做程序設計
    它是一個開源輕量級PHP框架。Bootstrap,是目前很受歡迎的前端框架。Bootstrap 是基於 HTML、CSS、JavaScript 的,它簡潔靈活,使得 Web 開發更加快捷。它由Twitter的設計師Mark Otto和Jacob Thornton合作開發,是一個CSS/HTML框架。
  • 40 個超棒的免費 Bootstrap HTML5 網站模板
    Bootstrap 是快速開發Web應用程式的前端工具包。
  • 前端框架 Bootstrap 5 Beta 1 發布
    JavaScript 改進和錯誤修復 通過 state 選項更新了具有 pseudo-classes 支持的實用程序 API更多詳情可查看:https://github.com/twbs/bootstrap
  • kuapingUI 2.0 版本發布,Bootstrap 4+ 大組件 UI 框架
    kuapingUI 2.0 版本發布,更新了基於bootstrap 4+的組件版本,增加了文本、巨幕、新聞、產品、聯繫、團隊、特徵等數幾十種常用
  • swagger-bootstrap-ui 應用擴展程序 1.0.0 發布
    隨著swagger-bootstrap-ui已經歷時兩年多,發布了26個版本,目前也得到的很多Java
  • 免費的 Bootstrap 網站模版 - Bootstrapper
    下載演示 相信對於前端開發人員來說Bootstrap一定不陌生,它能夠幫助我們創建優雅而功能強大的模板和頁面。作為一個成功的前端框架,擁有眾多的粉絲,因此相關的網頁設計模板也曾出不窮。 今天我們介紹一款免費的bootstrap模板 -  Bootstrapper ,這個漂亮的模板來自知名的模板市場 FlashMint,擁有HTML/CSS及其PS源文件,你可以使用到個人或者商用網站中。希望大家喜歡!
  • 如何使用框架Bootstrap 4框架來實現易於查看的UI
    一個框架,可以輕鬆查看易於閱讀的設計BootstrapBootstrap(bootstrap)是 一個有用的框架,可以輕鬆地在自己的網頁上準備易於使用且易於使用的設計和功能。如下所示,您可以使用導航欄,側欄,菜單項,按鈕類型連結,列布局等輕鬆地為PC和行動裝置創建頁面。
  • 17 款常用響應式 web UI 框架 - OSCHINA - 中文開源技術交流社區
    Bootstrap Bootstrap是快速開發Web應用程式的前端工具包。它是一個CSS和HTML的集合,它使用了最新的瀏覽器技術,給你的Web開發提供了時尚的版式,表單,buttons,表格,網格系統等等。