Skip to main content

响应式框架Bootstrap

Bootstrap框架简介

Bootstrap是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的WEB项目。

在前面视频教程中提到的,响应断点、栅格系统、交互实现等内容,在Bootstrap框架中都已经提供好了,只需要引入框架文件即可使用。

Bootstrap文件可通过官方提供的网址:https://getbootstrap.com/ 进行下载。截止到目前最新的版本为 v5.0.x 。这里强调一点,Bootstrap框架是基于jquery库来设计的,所以除了在html文件中引入Bootstrap相关文件外,还需要引入jquery.js文件,并需要确保文件的引入顺序,具体引入方式如下:

<link rel="stylesheet" href="./bootstrap.css">
<script src="./jquery.js"></script>
<script src="./bootstrap.js"></script>

响应式断点的设定

Bootstrap中的断点值设定跟前面视频中讲解的值是一样的:

设备描述断点值标识符
Extra small<576px
Small≥576px-sm
Medium≥768px-md
Large≥992px-lg
X-Large≥1200px-xl
XX-Large≥1400px-xxl

在Bootstrap框架中,能够具备响应式断点设定的样式非常多,如:float浮动、display显示框、container容器、text文本等。

<div class="float-sm-start
d-lg-block
container-md
text-xl-start"></div>

响应式栅格系统

Bootstrap中的栅格系统跟前面视频中讲解的也是一样的,不过功能更加的丰富,除了有12列响应式栅格系统外,还有栅格位置的控制和对行的栅格化控制等。

可通过 offset-*-* 模式对栅格进行偏移,代码如下:

<div class="row">
<div class="col-3 offset-1 bg-primary p-4"></div>
<div class="col-3 offset-2 bg-danger p-4"></div>
</div>




可以看到第一列距离左边会空出一个栅格的大小,第二列跟第一列之间会空出两个栅格的大小,那么最后剩余的空间为三个栅格。

可通过 row-*-* 模式对行进行栅格化控制,代码如下:

<div class="row row-cols-3">
<div class="col bg-primary p-4 border"></div>
<div class="col bg-primary p-4 border"></div>
<div class="col bg-primary p-4 border"></div>
<div class="col bg-primary p-4 border"></div>
</div>
<div class="row row-cols-4">
<div class="col bg-danger p-4 border"></div>
<div class="col bg-danger p-4 border"></div>
<div class="col bg-danger p-4 border"></div>
<div class="col bg-danger p-4 border"></div>
</div>

可以看到第一行只能放置三列,而第二行可以放置四列。

常见bootstrap组件

在Bootstrap框架中提供了很多现成的组件,可直接进行使用并带有交互行为。下面展示其中一个组件,Accordion(手风琴,即折叠列表)组件。

<div class="accordion" id="accordionExample">
<div class="accordion-item">
<h2 class="accordion-header" id="headingOne">
<button class="accordion-button" type="button" data-bs-toggle="collapse" data-bs-target="#collapseOne" aria-expanded="true" aria-controls="collapseOne">
第一项
</button>
</h2>
<div id="collapseOne" class="accordion-collapse collapse show" aria-labelledby="headingOne" data-bs-parent="#accordionExample">
<div class="accordion-body">
第一项的内容
</div>
</div>
</div>
<div class="accordion-item">
<h2 class="accordion-header" id="headingTwo">
<button class="accordion-button collapsed" type="button" data-bs-toggle="collapse" data-bs-target="#collapseTwo" aria-expanded="false" aria-controls="collapseTwo">
第二项
</button>
</h2>
<div id="collapseTwo" class="accordion-collapse collapse" aria-labelledby="headingTwo" data-bs-parent="#accordionExample">
<div class="accordion-body">
第二项的内容
</div>
</div>
</div>
</div>

Bootstrap中的组件是通过,自定义属性 data-* 方式来控制交互行为的,例如在Accordion组件中通过 data-bs-toggle="collapse" data-bs-target="#collapseOne" 进行的。