bootstrap5-學習筆記1-容器+布局+按鈕+工具

參考:
Bootstrap5 教程 | 菜鳥教程
https://www.runoob.com/bootstrap5/bootstrap5-tutorial.html

Spacing · Bootstrap v5 中文文檔 v5.3 | Bootstrap 中文網
https://v5.bootcss.com/docs/utilities/spacing/


之前用bootstrap2和3比較多,最近用到了5,發現好多地方不一樣了,所以學習一下。主要寫沒用過的特性,隨緣更新。

目錄

    • 容器
      • 屬性
    • 布局
      • 規則
    • 按鈕
      • 屬性
      • 按鈕組
    • 工具Utilities
      • spacing
      • 浮動
      • border
      • 寬度與高度

容器

Bootstrap 5 需要一個容器元素來包裹網站的內容。

  • .container 類用于固定寬度支持響應式布局的容器。
  • .container-fluid 類用于 100% 寬度,占據全部視口(viewport)的容器。

container 的行為復雜一些:

  • 寬度 (max-width) 會根據屏幕寬度同比例放大或縮小。超級小屏幕(<576px)是100%,然后每種范圍有一個固定寬度。超級大屏幕 (≥1400px) 是 Bootstrap 5 新增加的, Bootstrap 4 最大的是特大屏幕 (≥1200px)
  • margin-left, margin-right 都為 auto,保持 container 容器居中。

container-fluid 的行為就簡單:

  • margin:0 寬度:100%

屬性

  1. 容器內邊距
    默認情況下,容器都填充左右內邊距,頂部和底部不填充。Bootstrap 提供了一些間距類用于填充邊距。 比如 .pt-5 就是用于填充頂部內邊距(記為padding-top,5在下面有解釋)。

  2. 邊框和顏色
    bg-dark就是背景色為深色,text-white是文本為白色。這種屬性也可以用在其他標簽里,比如<p><a>等。類似還有bg-primary|bg-success|bg-info|bg-warning|bg-danger|bg-secondary(中灰色)|bg-light(淺灰色)。至于字體的顏色,如下圖所示:
    在這里插入圖片描述
    后面跟數字表示顏色的透明度,如.text-black-50就是透明度為50的黑色文本

    <div class="container p-5 my-5 border"><h1>我的第一個 Bootstrap 頁面</h1><p>這個容器有一個邊框和一些邊距。</p>
    </div>
    <div class="container p-5 my-5 bg-dark text-white"><h1>我的第一個 Bootstrap 頁面</h1><p>這個容器具有深色背景色和白色文本,以及一些額外的邊距。</p>
    </div>
    <div class="container p-5 my-5 bg-primary text-white"><h1>我的第一個 Bootstrap 頁面</h1><p>這個容器具有藍色背景色和白色文本,以及一些額外的邊距。</p>
    </div>
    

    背景色可以加漸變,只要后面跟一個bg-gradient即可。

  3. 響應式容器
    可以使用.container-sm|md|lg|xl。max-witdth會隨之變化

布局

規則

  • 系統最多分為12列
  • .col-針對所有設備,.col-sm-平板,.col-md-桌面顯示器,.col-lg-大桌面顯示器,.col-xl-特大桌面顯示器,.col-xxl-超大桌面顯示器
  • 網格每一行需要放在容器中
  • Bootstrap 5 和 Bootstrap 4 使用 flexbox(彈性盒子) 而不是浮動。 Flexbox 的一大優勢是,沒有指定寬度的網格列將自動設置為等寬與等高列
  • .row 表示行,下面如果只用.col,不指定設備和列數的話,會均分行
  • 偏移列:使用.offset-設備-偏移列數
    <div class="row"><div class="col-md-4 p-3 bg-primary text-white">.col-md-4</div><div class="col-md-4 offset-md-4 bg-dark text-white">.col-md-4 .offset-md-4</div>
    </div>
    
    在這里插入圖片描述

按鈕

屬性

  1. 顏色:class="btn"是無框黑字白底按鈕

  2. 邊框:加outline 關鍵詞,如 class="btn btn-outline-primary" 就是一個藍色邊框、白色背景、藍色字體的按鈕

  3. 大小:btn-lg|btn-sm

  4. 塊級:btn-block。如果有多個塊級,可以使用gap-數字設置。

    <div class="d-grid gap-3"><button type="button" class="btn btn-primary btn-block">100% 寬度的按鈕</button><button type="button" class="btn btn-primary btn-block">100% 寬度的按鈕</button><button type="button" class="btn btn-primary btn-block">100% 寬度的按鈕</button>
    </div>
    

    在這里插入圖片描述

    .d-grid是指在父級元素是成塊的,如果去掉會變成:
    在這里插入圖片描述

  5. 按鈕狀態

    <div class="container mt-3"><h2>按鈕狀態</h2><button type="button" class="btn btn-primary">主要按鈕</button><button type="button" class="btn btn-primary active">點擊后的按鈕</button><button type="button" class="btn btn-primary" disabled>禁止點擊的按鈕</button><a href="#" class="btn btn-primary disabled">禁止點擊的鏈接</a>
    </div>
    

    <a>里要把 disabled 寫在 class 里,可以理解為是套用的button格式
    在這里插入圖片描述

  6. 加載中的按鈕

    	<!-- 一個旋轉的圓弧。還可以換成spinner-grow spinner-grow-sm --><button class="btn btn-primary" disabled><span class="spinner-border spinner-border-sm"></span>Loading..</button>
    

按鈕組

  1. 水平按鈕組
    在外層<div>上添加.btn-group,控制大小是另外加.btn-group-lg或者.btn-group-sm
    <div class="btn-group btn-group-sm"><button type="button" class="btn btn-primary">Apple</button><button type="button" class="btn btn-primary">Samsung</button><button type="button" class="btn btn-primary">Sony</button>
    </div>
    
  2. 垂直按鈕組
    使用.btn-group-vertical
  3. 帶下拉菜單的按鈕
    <!-- 注意 btn外層的div class="btn-group" -->
    <div class="btn-group"><button type="button" class="btn btn-primary dropdown-toggle" data-bs-toggle="dropdown">Sony</button><ul class="dropdown-menu"><li><a class="dropdown-item" href="#">Tablet</a></li><li><a class="dropdown-item" href="#">Smartphone</a></li></ul>
    </div>
    

工具Utilities

這里包含的是包括背景、顏色、邊框等一堆亂七八糟的東西,這些可以用在很多元素上,屬于一些公共的特性。

spacing

前面一些 class 里寫了諸如 p-5, my-5, mt-3 這樣的數字,其實是控制邊距的。說明:

格式是:{property}{sides}-{size} for xs and {property}{sides}-{breakpoint}-{size} for sm, md, lg, xl, and xxl.

  • property 里m 表示 margin(外邊距),p 表示padding(內邊距)
  • sides 表示方向,或者說是哪一邊
    • t 表示top,b 表示bottom,x 表示水平方向(左右),y 表示垂直方向(上下),s 表示LTR時左邊和RTL的右邊,e 則相反。如果不寫 sides 表示四面都設置
    • size 包括 [0, 5] 和 auto。其中 0 表示真的設為0,3 表示將 margin 或者 padding 設置為$spacer,1~5分別表示設為$spacer的0.25,0.5,1.5 和 3.5倍。

水平居中:如果指定了 width ,并且 display:block,那么可以使用.mx-auto,使元素在水平方向上居中

浮動

.clearfix是清除浮動,start和end表示向左向右。

  <div class="clearfix"><span class="float-start">Float left</span><span class="float-end">Float right</span></div>

也可以根據尺寸設置浮動效果,像.float-md-end

不浮動:.float-none

border

使用.border

<div class="container mt-3"><span class="border"></span> <!-- 默認,全邊框 --><span class="border border-0"></span> <!-- 無邊框 --><span class="border border-top-0"></span> <!-- 只去掉頂部邊框 --><span class="border border-end-0"></span> <!-- 只去掉右邊(LTR,所以右邊是end)邊框 --><span class="border border-bottom-0"></span><span class="border border-start-0"></span><br><!-- 以下是保留xx位置的border --><span class="border-top"></span> <!-- 只保留頂部邊框 --><span class="border-end"></span><span class="border-bottom"></span><span class="border-start"></span>
</div>
  • 調節linewidth使用.border-數字,其中數字取 [0, 5]
  • 邊框顏色使用.border-顏色,顏色可以是primary, success, info, dark white什么的
  • 圓角邊框使用.rounded[-位置/形狀],位置的話top/bottom/start/end就是字面意思,circle表示邊框是圓形,pill表示是膠囊型
  • 圓角的大小可以用.rounded-數字,數字取值[0, 3]

寬度與高度

.w-數字表示寬度為百分之多少(eg:25/50/75/100),也可以用auto。.mw-100表示最大寬度為100

.h-數字表示高度為百分之多少,跟寬度一樣的。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/21029.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/21029.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/21029.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SRE視角下的DevOps構建之道

引言&#xff1a; 隨著數字化時代的飛速發展&#xff0c;軟件成為了企業競爭力的核心。為了更高效地交付高質量的軟件&#xff0c;DevOps&#xff08;Development和Operations的組合&#xff09;作為一種文化、實踐和工具集的集合&#xff0c;逐漸成為了行業內的熱門話題。然而…

OpenFHE 使用樣例

參考文獻&#xff1a; 編譯 OpenFHEOpenFHE 源碼解析&#xff1a;PKE 部分[ABB22] Al Badawi A, Bates J, Bergamaschi F, et al. Openfhe: Open-source fully homomorphic encryption library[C]//Proceedings of the 10th Workshop on Encrypted Computing & Applied Ho…

渲染100為什么是高性價比網渲平臺?渲染100邀請碼1a12

市面上主流的網渲平臺有很多&#xff0c;如渲染100、瑞云、炫云、渲云等&#xff0c;這些平臺各有特色和優勢&#xff0c;也都聲稱自己性價比高&#xff0c;以渲染100為例&#xff0c;我們來介紹下它的優勢有哪些。 1、渲染100對新用戶很友好&#xff0c;注冊填邀請碼1a12有3…

【CTF MISC】XCTF GFSJ0008 low Writeup(LSB隱寫+QR Code識別)

low 暫無 解法 用 StegSolve 打開&#xff0c;Green plane 1 中疑似隱藏有二維碼。 使用大佬寫的代碼&#xff1a; from PIL import Imageimg Image.open("./low.bmp") img_tmp img.copy() pix img_tmp.load() width, height img_tmp.size for w in range(wid…

每日一題——Python實現PAT甲級1046 Shortest Distance(舉一反三+思想解讀+逐步優化)

一個認為一切根源都是“自己不夠強”的INTJ 個人主頁&#xff1a;用哲學編程-CSDN博客專欄&#xff1a;每日一題——舉一反三Python編程學習Python內置函數 Python-3.12.0文檔解讀 目錄 我的寫法 專業點評 優點 改進建議 時間復雜度分析 空間復雜度分析 總結 我要更…

Python模塊導入的寫法

關于Python模塊導入的寫法有 相對路徑導入 和 絕對路徑導入 兩種不同的導入路徑的寫法。 文章目錄 相對路徑導入絕對路徑導入總結 相對路徑導入 from .utils import upblock2d, crossattn_upblock2d使用了相對導入&#xff0c;以&#xff08;“.”&#xff09;開頭這種導入方…

HCIP-Datacom-ARST自選題庫__MAC【14道題】

一、單選題 1.缺省情況下&#xff0c;以下哪種安全MAC地址類型在設備重啟后表項會丟失? 黑洞MAC地址 Sticky MAC地址 安全動態MAC地址 安全靜態MAC地址 2.華為交換機MAC地址表中的動態sticky MAC地址的默認老化時間是多少秒? 300 不會老化 400 500 3.華為交換機MA…

【BeyondCompare官方免費版下載鏈接】

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 前言一、BeyondCompare官方免費版下載鏈接 前言 該軟件用于比較兩個文本或文件夾之間的不同之處&#xff0c;查看代碼修改時非常好用。 一、BeyondCompare官方免費…

Polar Web【簡單】login

Polar Web【簡單】login 本文旨在記錄此題的探索和解決過程。 Contents Polar Web【簡單】login探索&思路EXP (python)結果&總結 探索&思路 查看源碼&#xff0c;發現存在用戶信息泄露。嘗試用獲取信息登錄&#xff0c;顯示成功&#xff0c;但其后沒有可做的操作。…

有損線、上升邊退化與材料特性(七)

有損線的不良影響 當信號沿著實際有損線傳輸時&#xff0c;高頻分量的幅度減小&#xff0c;而低頻分量的幅度保持不變。由于這個種選擇性的衰減&#xff0c;信號的帶寬降低&#xff0c;信號的上升邊會增長。如果上升邊的退化與單位間隔比很小&#xff0c;同位模式將比較穩定與…

Django視圖與路由:打造你的網絡帝國

Hello&#xff0c;我是阿佑&#xff0c;上期給大家講了 Django ORM魔法&#xff1a;用Python代碼召喚數據庫之靈&#xff01; 今天將帶大家深入探討了視圖的工作原理、如何編寫高效的函數視圖和類視圖&#xff0c;以及如何巧妙地利用URL路由來提升應用的用戶體驗和可維護性。通…

最新h5st(4.7.2)參數分析與純算法還原(含算法源碼)

文章目錄 1. 寫在前面2. 加密分析3. 算法還原 【&#x1f3e0;作者主頁】&#xff1a;吳秋霖 【&#x1f4bc;作者介紹】&#xff1a;擅長爬蟲與JS加密逆向分析&#xff01;Python領域優質創作者、CSDN博客專家、阿里云博客專家、華為云享專家。一路走來長期堅守并致力于Python…

操作系統 實驗29 同步與互斥

1、并發線程同步與互斥 源程序&#xff1a; #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <unistd.h> #include <string.h> int num30,count10; pthread_mutex_t mylockPTHREAD_MUTEX_INITIALIZER; void *sub1(voi…

圖解 Python 編程(10) | 錯誤與異常處理

&#x1f31e;歡迎來到Python的世界 &#x1f308;博客主頁&#xff1a;卿云閣 &#x1f48c;歡迎關注&#x1f389;點贊&#x1f44d;收藏??留言&#x1f4dd; &#x1f31f;本文由卿云閣原創&#xff01; &#x1f4c6;首發時間&#xff1a;&#x1f339;2024年6月2日&…

LangChain學習之prompt格式化與解析器使用

1. 學習背景 在LangChain for LLM應用程序開發中課程中&#xff0c;學習了LangChain框架擴展應用程序開發中語言模型的用例和功能的基本技能&#xff0c;遂做整理為后面的應用做準備。視頻地址&#xff1a;基于LangChain的大語言模型應用開發構建和評估高 2. 先準備嘗試調用O…

數據結構(C):從初識堆到堆排序的實現

目錄 &#x1f31e;0.前言 &#x1f688; 1.堆的概念 &#x1f688; 2.堆的實現 &#x1f69d;2.1堆向下調整算法 &#x1f69d;2.2堆的創建&#xff08;堆向下調整算法&#xff09; ??2.2.1 向下調整建堆時間復雜度 &#x1f69d;2.3堆向上調整算法 &#x1f69d;2.…

testcontainer

在我們的項目中&#xff0c;單元測試是保證我們代碼質量非常重要的一環&#xff0c;但是我們的業務代碼不可避免的需要依賴外部的系統或服務如DB&#xff0c;redis&#xff0c;其他外部服務等。如何保證我們的測試代碼不受外部依賴的影響&#xff0c;能夠穩定的運行成為了一件比…

c++------類和對象(下)包含了this指針、構造函數、析構函數、拷貝構造等

文章目錄 前言一、this指針1.1、this指針的引出1.2、 this指針的特性 二、類的默認的六個構造函數2.1、構造函數簡述2.2構造函數 三、析構函數3.1、析構函數引出3.2、特點&#xff1a; 四、拷貝構造4.1、引入4.2、特征&#xff1a;4.3、默認拷貝構造函數 總結 前言 在本節中&a…

中國的歷史看中國的經濟發展

從中國的歷史看中國的經濟發展&#xff0c;可以發現其經歷了幾個顯著的階段&#xff0c;每個階段都有其獨特的特點和成就&#xff1a; 古代經濟&#xff1a;中國古代經濟以農業為主&#xff0c;實行井田制&#xff0c;重視水利工程的建設&#xff0c;如都江堰、靈渠等。 商業發…

Compose Multiplatform 1.6.10 發布,解釋一些小問題, Jake 大佬的 Hack

雖然一直比較關注跨平臺開發&#xff0c;但其實我很少寫 Compose Multiplatform 的內容&#xff0c;因為關于 Compose Multiplatform 的使用&#xff0c;其實我并沒在實際生產環境上發布過&#xff0c;但是這個版本確實值得一提&#xff0c;因為該版本包含&#xff1a; iOS Bet…