搜尋
首頁web前端Bootstrap教程Bootstrap學習之詳解網格系統

Bootstrap學習之詳解網格系統

Mar 04, 2021 am 10:24 AM
bootstrap網格系統

這篇文章跟大家介紹一下Bootstrap中的網格系統。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

Bootstrap學習之詳解網格系統

相關推薦:《bootstrap教程

bootstrap框架中的網格系統就是將容器平分成12份,在使用的時候可以根據實際情況重新編譯LESS/SASS原始碼來修改12這個數值。 bootstrap框架的網格系統工作原理:

1、資料行(.row)必須包含在容器(.container)中,以便其賦予合適的對齊方式和內距(padding)

<div class="container">
<div class="row"></div>
</div>

2、在行(.row)中可以新增列(.column),但列數總和不能超過平分的總列數(如:12)

<div class="container">
<div class="row">
  <div class="col-md-4"></div>
  <div class="col-md-8"></div>
</div>
</div

3、具體內容應當放在列容器(.column)之內,而且只有列(.column)才可以作為行容器(.row)的直接子元素

4、透過設定內距(padding)從而建立列與列之間的間距,然後透過為第一列和最後一疊設定負值的外距(margin)來抵消內距(padding)的影響

在bootstrap網格系統中帶有響應式效果,其帶有四種類型的瀏覽器,(超小屏,小屏,中屏和大屏),其斷點是768px,992px,1220px

容器(.container),針對不同的瀏覽器分辨率,其寬度也不一樣:自動,760px,970px,1170px;

.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
  @media (min-width: 768px) {
  .container {
    width: 750px;
  }
  @media (min-width: 992px) {
  .container {
    width: 970px;
  }
  @media (min-width: 1200px) {
  .container {
    width: 1170px;
  }

行容器(.row),將容器的行平分了12等份,也就是列。每個欄位都有一個padding-left:15px和padding-right:15px;這也導致了第一列的padding-left和最後一列的paading-right佔據了中寬度的30px

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

行容器(.row)定義了margin-left和margin-right值為-15px,用來抵消第一列的左內距和最後一列的右內距,以便第一列和最後一列與容器(.container)之間就沒有間距了

.row {
  margin-right: -15px;
  margin-left: -15px;
}

基本用法

#由於bootstrap框架在不同螢幕尺寸上使用了不同的網格樣式,下面就以中屏(970px)為例。

1、列組合

列組合就是要更改數字來合併列(總數不能超過12),有點類似表格的colspan屬性;列組合方式只涉及兩個特性:浮動於寬度百分比

<div>
           <div>
               <div>col-md-4</div>
               <div>col-md-8</div>
           </div>
           <div>
               <div>col-md-4</div>
               <div>col-md-4</div>
               <div>col-md-4</div>
           </div>
           <div>
               <div>col-md-3</div>
               <div>col-md-6</div>
               <div>col-md-3</div>
           </div>
       </div>

效果如下:

Bootstrap學習之詳解網格系統

#確保所有列左浮動

.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
 }

定義每個列組合的寬度

.col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }

2、列偏移

有時候,我們不希望相鄰的兩個列緊靠在一起,但又不想用margin或者其他技術手段,這是可以用列偏移(offset)來實現。使用列偏移只需在列元素上新增類別名稱.col-md-offset-*(星號代表要偏移的列組合數),具有這個類別名稱的列就會偏移,如:在列元素上新增.col-md-offset-4,表示該列向右偏移4個列的寬度

<div>
           <div>
               <div>1111</div>
               <div>111</div>
               <div>333</div>
           </div>
           <div>
               <div>列偏移</div>
               <div>col-md-2</div>
               <div>col-md-2</div>
           </div>
       </div>

效果如下:

Bootstrap學習之詳解網格系統

實作原理:

利用十二分之一的margin-left,有多少個offset,就有多少個margin-left

.col-md-offset-12 {
   margin-left: 100%;
}
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0;
  }

需要注意的是,使用col-md-offset-*對列進行右偏移時,要確保列與偏移列的總數不超過12,不然會導致列斷行顯示

4、列排序

列排序就是改變列的方向,並且設定浮動的距離。在bootstrap網格系統中是透過新增類別名稱。 col-md-push-*和col-md-pull-*

<div>
       <div>
          <div>col-md-4</div>
          <div>col-md-8</div>
       </div>
   </div>

效果如下:

Bootstrap學習之詳解網格系統

##col-md-4居左,col-md -8居右,如果要互換位置,就需要將col-md-4向右移動8個欄位的距離,也就是新增類別名稱.col-md-push-8;同時需要將col-md-8向左移動4個欄位的距離,也就是新增類別名稱.col-md-pull-4

bootstrap僅透過設定left和right來實現定位效果。

.col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }

  .col-md-pull-4 {
    right: 33.33333333%;
  }

  .col-md-pull-3 {
    right: 25%;
  }

  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: 0;
  }

  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: 0;
  }

5、列巢狀

列巢狀可以在一個列中新增一個或做個行(row)容器,然後在這個行容器中插入列,在列容器中的行容器(row),寬度為100%時,就是目前外部列的寬度

<div>
       <div>
           <div>
               我在里面嵌套了一个网格
               <div>
                   <div>col-md-6</div>
                   <div>col-md-6</div>
               </div>
           </div>
           <div>col-md-4</div>
       </div>
       <div>
           <div>col-md-4</div>
           <div>
               我在里面嵌套了一个网格
               <div>
                   <div>col-md-4</div>
                   <div>col-md-4</div>
                   <div>col-md-4</div>
               </div>
           </div>
       </div>
   </div>

Bootstrap學習之詳解網格系統

更多编程相关知识,请访问:编程入门!!

以上是Bootstrap學習之詳解網格系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:博客园。如有侵權,請聯絡admin@php.cn刪除
引導和反應:創建響應式Web應用程序引導和反應:創建響應式Web應用程序May 03, 2025 am 12:13 AM

如何利用Bootstrap和React打造響應式Web應用?通過結合Bootstrap的CSS框架和React的組件化架構,可以創建現代、靈活且易於維護的Web應用。具體步驟包括:1)導入Bootstrap的CSS文件並使用其類樣式化React組件;2)利用React的組件化管理狀態和邏輯;3)按需加載Bootstrap樣式以優化性能;4)使用React的Hooks和Bootstrap的JavaScript組件創建動態界面。

Bootstrap:前端開髮變得更加容易Bootstrap:前端開髮變得更加容易May 02, 2025 am 12:10 AM

Bootstrap是一種開源的前端框架,幫助開發者快速構建響應式網站。 1)它提供了預定義的樣式和組件,如網格系統和導航欄。 2)通過CSS和JavaScript文件實現樣式和動態交互。 3)基本用法是引入文件並使用類名構建頁面。 4)高級用法包括通過Sass自定義樣式。 5)常見問題包括樣式衝突和JavaScript組件問題,可通過開發者工具和模塊化管理解決。 6)性能優化建議選擇性引入模塊和合理使用網格系統。

React和Bootstrap:理想的組合?React和Bootstrap:理想的組合?May 01, 2025 am 12:01 AM

React和Bootstrap是理想的搭配。 1)使用Bootstrap的CSS類和JavaScript組件,2)通過React-Bootstrap或reactstrap集成,3)按需加載和優化渲染性能,可以構建高效美觀的用戶界面。

使用Bootstrap:創建現代和移動優先的網站使用Bootstrap:創建現代和移動優先的網站Apr 30, 2025 am 12:08 AM

Bootstrap是用於創建現代化、響應式、且用戶友好的網站的開源前端框架。 1)它提供網格系統和預定義樣式,簡化佈局和開發。 2)移動優先設計確保兼容性和性能。 3)通過自定義樣式和組件,網站可個性化。 4)性能優化和最佳實踐包括選擇性加載和響應式圖像。 5)常見錯誤如佈局問題和样式衝突可通過調試技巧解決。

Bootstrap和Web設計:最佳實踐和技術Bootstrap和Web設計:最佳實踐和技術Apr 29, 2025 am 12:15 AM

Bootstrap是由Twitter開發的開源前端框架,適合快速構建響應式網站。 1)它的網格系統基於12列結構,允許創建靈活的佈局。 2)響應式設計功能使網站適應不同設備。 3)基本用法包括構建導航欄,高級用法涉及卡片組件。 4)常見錯誤如網格系統誤用可通過正確設置列寬避免。 5)性能優化包括只加載必要組件、使用CDN和文件壓縮。 6)最佳實踐強調代碼整潔、自定義樣式和響應式設計。

Bootstrap和React:結合Web開發框架Bootstrap和React:結合Web開發框架Apr 28, 2025 am 12:08 AM

結合Bootstrap和React的原因是它們的互補性:1.Bootstrap提供預定義的樣式和組件,簡化UI設計;2.React通過組件化開發和虛擬DOM提升效率和性能。結合使用可以享受快速UI構建和復雜交互管理。

從零到bootstrap:快速入門從零到bootstrap:快速入門Apr 27, 2025 am 12:07 AM

Bootstrap是一個基於HTML、CSS和JavaScript的開源前端框架,旨在幫助開發者快速構建響應式網站。它的設計理念是“移動優先”,提供了豐富的預定義組件和工具,如網格系統、按鈕、表單、導航欄等,簡化前端開發過程,提高開發效率,並確保網站的響應性和一致性。使用Bootstrap可以從一個簡單的頁面開始,逐步添加高級組件如卡片和模態框,優化性能的最佳實踐包括自定義Bootstrap、使用CDN和避免過度使用類名。

React和Bootstrap:增強用戶界面設計React和Bootstrap:增強用戶界面設計Apr 26, 2025 am 12:18 AM

React和Bootstrap可以無縫集成來提升用戶界面設計。 1)安裝依賴包:npminstallbootstrapreact-bootstrap。 2)導入CSS文件:import'bootstrap/dist/css/bootstrap.min.css'。 3)使用Bootstrap組件,如按鈕和導航欄。通過這種結合,開發者可以利用React的靈活性和Bootstrap的樣式庫,創建美觀且高效的用戶界面。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。