bootstrap是我最喜歡的前端框架,沒有之一,當前的最新版本是bootstrap4.4.1,和之前的3.X版本相比較有較大的變化,不過都是屬於各種標籤的分離,方法還是一樣的,在網上各種教程雖多,但是對於入門還不是不夠,很多入門教程講得雲裡霧裡,看不懂到底在說些什麼。我覺得使用具體的實例來結合相關的標籤使用才能真正的加深理解。
bootstrap是移動優先的前端開發框架,本身是為了更好地適應各種移動瀏覽器而設計的,所以前端代碼必須使用HTML5和css3來寫,從bootstrap4.0版本開始引入了超小屏幕小於576px寬度的網格。bootstrap的優勢在於其對各種瀏覽器兼容性已經做好了測試,除了那些低版本的瀏覽器不支持外,完全不用擔心瀏覽器的兼容問題。
在使用bootstrap 4x版本時需要記住其對個瀏覽版本和系統的支持情況:
Chrome >= 45Firefox >= 38Edge >= 12Internet Explorer >= 10iOS >= 9Safari >= 9Android >= 4.4Opera >= 30
01使用bootstrap創建一個頁面
首先去bootstrap官方網站上下載源碼,也可以使用相關的CND來創建,具體方法是:下載bootstrap,找到dist文件夾裡面的css和JS文件,將帶有min的拷貝到你項目中對應的css和JS文件夾裡面。在前端頁面head標籤裡面引入css文件:
<link rel="stylesheet" href="/css/bootstrap.min.css" >在頁面</body>標籤的前面添加引入JS代碼,注意jQuery、popper、和bootstrap這三個js的順序不能變,必須首先引入jQuery,其次是popper,最後才是bootstrap,因為他們之間有相互依賴的關係,改變了順序會導致代碼失效:
<script src="/js/jquery-3.4.1.slim.min.js"></script><script src="/js/popper.min.js"></script><script src="/js/bootstrap.min.js"></script>
帶有min的文件是經過壓縮後的文件,體積會比較小,加載速度更快,比如bootstrap.min.js就是經過壓縮後的,而不帶min的比如bootstrap.js就是沒有壓縮處理過,適合於需要修改其中的代碼使用,差別就是壓縮與否的關係。
修改head標籤使頁面實現自適應,把前端代碼修改為HTML5,並且添加編碼識別和自適應meta標籤,代碼如下:
<!doctype html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">,這一句是實現響應式的重要標誌。
將上面的代碼保存為test.html文件,使用瀏覽器打開這個文件,可以看到裡面沒有什麼內容,但是bootstrap的整個文件已經成功全部載入,下面接著編寫相關代碼即可。
02網格系統grid的使用
bootstrap最重要的核心功能就是網格系統,通過sm/md/lg/xl來對不同寬度的屏幕進行區分,最外層容器使用container標籤進行約束。記住網格默認一共是12列,下圖所示,每一列佔用1個網格。
為了使不同寬度的屏幕都能自適應鋪滿這個屏幕,所以有sm/md/lg/xl這個標籤,在實戰中幾乎經常用到。下圖所示,這個網格系統光是這個子說幾列是很難理解,記住總的12格,然後下面通過實例來說明。
在網頁的body標籤裡面寫如下代碼:
<div> <div></div> </div>由於container標籤默認左右會添加15px空白,使用row來清楚掉,上面就是標準的寫法,然後再進行網格化,實現響應式布局。繼續在row標籤內添加<div></div>,col代表自動的意思,對所有的屏幕都是100%寬度,在bootstrap4.2以上版本中col=col-12。
單純地將網格實在太難理解,而且有些抽象,我這裡準備了一個頁面上左邊顯示文章內容,右邊顯示相關推薦內容的實例,這樣子會很容理解,直接上代碼:
上面第13行和19行的div是並列的關係,col-12指不論在什麼樣寬度的屏幕上都顯示為12格填充滿整個屏幕,col-lg-8指當屏幕寬度大於等於992px時,顯示8格,lg代表的是大於等於992px的屏幕,記不住的話可以查看官方幫助文檔,第19行的div中col-lg-4代表在大於等於992px的屏幕上顯示4格。將代碼保存,用谷歌瀏覽器打開,在頁面的空白處點滑鼠右鍵---檢查,會彈出如下圖所示的會話框,點那個「手機」圖標,就可以了看到在右側會有一個雙豎線的地方,滑鼠放上去左右移動改變屏幕的大小,此時如果屏幕寬度小於992px,你會發現右邊的標題會自動下移,並且是100%寬度。
使用網格需要注意sm/md/lg/xl這幾個分別代表的不同寬度是多少,把12個網格進行不同的拆分就可以了,只要總的加起來是12格就沒有問題。網格的使用非常簡單,但是有些抽象難以理解,你可以把上面的代碼拷貝本地實戰。
理解了網格的使用其他的就容易多了,bootstrap提供了個性化的應用標籤和一些常用的組件,比如輪播圖代碼、當行代碼都是開源直接複製過來,調用你自己網站的數據就能實現。而個性化的標籤則有這些。
03使用個性化標籤代碼
1、顏色類:為某個元素或文字添加顏色,背景顏色,在文檔utilities---colors裡面可以找到適合於的的顏色,比如代碼:
<div>背景灰色,文字綠色</div>直接用相關的顏色代碼,非常方便。
2、邊框類:使用border-*,星號代表top、right、left、bottom值,即可快速為元素添加邊框;如果需要為邊框添加顏色,使用border-*的方式,顏色代碼同樣在文檔中utilities---border裡面可以找到,因為記不住,所以不用記,需要的時候去複製就好了;還有Border-radius(為元素添加圓角效果)也在這裡,使用rounded即可實現。
3、內外邊距:使用margin和padding的時候可以根據需要,比如my-2代表margin上下分別設置為0.5rem,mr-1代表margin right設置為0.5rem,px代表padding left,pb代表padding bottom。
這些為我名勝區很多的代碼量,直接使用即可,在學習bootstrap4.4以上版本時,難點是網格系統。學習的過程中先不要忙著寫代碼,先去把幫助文檔從頭到尾看一遍,英文的看不懂也沒關係,只要能看懂一部分代碼即可,有一個大概的印象了,再寫代碼的時候邊寫邊熟練,這樣學起來很快。