Boot strap 官网

https://www.bootcss.com/

接下来我将一步一步进入 Bootstrap的介绍

一.响应式布局

Responsive web page 响应式网页/自适应网页

页面根据浏览设备不同

自动改变布局,图片/文本效果

不会影响用户体验

1.完成响应式布局,我们要做的事情

①设置视口

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">

width=device-width  视口宽度为设备宽度

initial-scale=1.0      初始化视口不缩放

maximum-scale=1.0  最大缩放倍率,1倍

user-scalable=0       用户不能缩放

特点:1.视口的设置,只有网页在移动端显示时才会生效,PC显示看不出效果

2.视口的简写方式,

<meta name="viewport" content="width=device-width, initial-scale=1">

②刚开始时为了不破坏页面的布局的建议:

多使用流式布局(默认文档流+浮动)和弹性布局,少用定位

文本,图片,尺寸,尽量使用相对单位,少用绝对单位

复杂页面,不适合使用响应式编写-

③使用css提供的媒体查询技术(稍后介绍)

2.响应式网页的测试

①使用真实设备测试

优点:真实可靠

缺点:成本太高,测试任务量巨大

②第三方测试工具

好处:测试成本低廉,效果尚可

缺点:很多硬件功能无法实现

③chrome自带的测试软件

测试效果极其有限

④直接拖动浏览器,控制页面大小,进行测试

3.媒体查询技术

Media  媒体,只浏览网页的设备

设备:screen: pc/ pad/phone

显示设备:TV    电视

应用设备:print    打印机

屏幕尺寸

超小屏  xs

size<576px

小屏    sm

576px<=size<768px

条件写为

min-width:576px and max-width:767.99px

中屏    md

768px <=size<992px

大屏    lg

992px <=size<1200px

超大屏  xl

size>=1200px

写法:

@media 条件{           //如@media screen and (min-width:576px) and (max-width:767.99px){}

选择器{样式声明}

选择器{样式声明}

选择器{样式声明}

}

条件:  设备 and 屏幕尺寸

@media设备 and 屏幕尺寸{

选择器{样式声明}

}

简写方式

①条件中,只写尺寸

@media 屏幕尺寸{    //如@media  (min-width:576px) and (max-width:767.99px){}

选择器{样式声明}

}

②尺寸条件也可简写

@media (min-width:576px){}

@media (min-width:768px){}

@media (min-width:992px) {}

@media (min-width:1200px) {}

这种写法的优势,小屏编写的样式,如果较大屏幕没有重写,直接会应用小屏幕的样式

二.Bootstrap

boot把常用样式进行了封装,我们使用的时候,只需要调用类名

但是,关于具体数值和具体颜色的类名,中大型项目不会使用

接下来从这官网的五点一一介绍.起步----如何使用boot ;全局css;.组件和插件;.scss;.boot项目

1.起步----如何使用boot

Bootstrap3屏幕类型

/* 超小设备(手机,小于 768px) */
/* Bootstrap 中默认情况下没有媒体查询 *//* 小型设备(平板电脑,768px 起) */ @media (min-width: @screen-sm-min) { ... } /* 中型设备(台式电脑,992px 起) */ @media (min-width: @screen-md-min) { ... } /* 大型设备(大台式电脑,1200px 起) */ @media (min-width: @screen-lg-min) { ... }

Bootstrap4 屏幕类型 下面的介绍  以Bootstrap4为准
/* 超小屏幕(手机,小于 768px) */
/* 没有任何媒体查询相关的代码,因为这在 Bootstrap 中是默认的设备优先的) */
/* 小屏幕(平板,大于等于 768px) */
@media (min-width: @screen-sm-min) { ... }
/* 中等屏幕(桌面显示器,大于等于 992px) */
@media (min-width: @screen-md-min) { ... }
/* 大屏幕(大桌面显示器,大于等于 1200px) */
@media (min-width: @screen-lg-min)

①添加视口的设置

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">

②按照顺序导入4个文件

官网https://www.bootcss.com/中可以下载得到这些文件

<link rel="stylesheet" href="css/bootstrap.css"/>

<script src="js/jquery.min.js"></script>

<script src="js/popper.min.js"></script>

<script src="js/bootstrap.min.js"></script>

③添加div,设置类名container,所有html元素写在这个div中

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

2.全局css

boot把很多样式封装成了类,我只需要调用类名就可以使用

但是,封装的具体数值和具体颜色,使用很少,记住常用的即可

I:接下来一一介绍常用的类

①容器

1.定宽容器 container  在不同屏幕下都定义了最大宽度 如<div class='container'></div>

2.变宽容器container-fluid 宽度随着body改变而变化

②按钮相关的class

.btn 基本类   行内块,文本,边框背景,过渡,伪类

按钮颜色 btn-danger/warning/success/info/primary/secondary/dark/light

按钮的大小 btn-lg/sm

镂空按钮 btn-outline-danger/warning......

块级按钮 btn-block

③图片

rounded  圆角

rounded-circle  圆

img-thumbnail 有边框,有内边距的缩略图

img-fluid  图片尺寸可以改变,但是不能超过图片原始尺寸的100%

④文本相关的样式

文本颜色 text-muted/danger/warning.........

文本大小写 text-uppercase/lowercase/capitalize

文本加粗 font-weight-normal/bold/light

斜体  font-italic

字号  .h1~~.h6

文本水平对齐方式  boot为水平对齐封装了响应式,没有封装两端对齐justify

text-*-left/center/right                *:sm/md/lg/xl    响应小屏/中屏/大屏/超大屏的对齐方式

⑤列表组

去除列表标识 list-unstyled

列表组 ul. list-group  弹性,y轴 设置四个角的圆角

>li. list-group-item   设置圆角上下外边距

. list-group-item-danger  列表项的颜色

⑥table相关的样式

table 基本类,宽度,后续th,td的样式

table-bordered 设置表格本身和th,td的边框

table-danger  表格背景

table-striped  给奇数tr添加一层黑纱

table-hover  给tr鼠标悬停时添加一层黑纱

II,辅助类---所有元素都能设置的类

①边框

基本类 border

border-top/right/bottom/left 单独设置某条边框有或没有0

border-0 清除边框

border-top/right/bottom/left-0 单独设置某条边框没有

边框颜色  border-danger/white......

②浮动

float-*-left/right/none  *:sm/md/lg/xl   响应式的在对应大小屏幕上朝对应方向浮动

clearfix  解决高度坍塌   添加该属性即可

③背景

bg-transparent/danger/warning......     改变背景颜色

④圆角

rounded        普通的圆角     0.25rem为半径的四角

rounded-circle     50%的圆角

rounded-top/right/bottom/left     单方向两角取0.25rem为半径圆角

rounded-0 去除圆角

⑤内外边距

m/mt/mr/mb/ml/my/mx-0/1/2/3/4/5/auto

四边外边距/上外边距/右外边距/下外边距/左外边距/上下外边距/左右外边距-取值0到5 auto居中

m/mt/mr/mb/ml/my/mx-*-0/1/2/3/4/5/auto  *:sm/md/lg/xl  对应响应式的外边距调整

p/pt/pr/pb/pl/py/px-0/1/2/3/4/5   内边距-取值0到5没有auto

p/pt/pr/pb/pl/py/px-*-0/1/2/3/4/5   *:sm/md/lg/xl    对应响应式的内边距调整

其中的值代表的单位

0:0px

1: 0.25rem

2: 0.5rem

3: 1rem

4: 1.5rem

5: 3rem

⑥尺寸

w-25/50/75/100   取父元素的百分比值

h-25/50/75/100   取父元素的百分比

3.栅格布局

①栅格的原理

把所有的布局,看做一行,每一行分成12份

那么通过元素占据的份数,来控制元素的布局

父元素 .row  弹性,可换行,主轴是x,左右-15px外边距

类     .no-gutters 清除弹性容器的左右-15外边距  清除所有子元素col的左右15内边距

子元素 .col-n  左右+15内边距(父元素no-gutters 可以清除) n表示占12份中的多少份

源码写法为flex:0 0 (n/12)%   即主轴占比

②响应式栅格

col-*-1/2/3/4/5/6/7/8/9/10/11/12  *:sm/md/lg/xl

响应不同屏幕尺寸下元素占据不同的份数

③不带数字的col类

.col  自动把整个row进行平分显示

一行中col的个数,可以超过12个,知识全部均分了,当超过一行后会自动换行

④列偏移

offset-*-1/2/3/4/5/6/7/8/9/10/11  *:sm/md/lg/xl

响应不同屏幕尺寸下将某元素忘右移动1到11份 没有12(默认一行只有12份),

源码是margin-left

4.弹性布局

①栅格布局和弹性布局的关系

只要父元素设置了display: flex;flex-wrap: wrap;

那么子元素都可以使用col

②boot对于display的封装

d-*-inline/block/inline-block/flex/table/inline-flex

*:sm/md/lg/xl

③boot对弹性属性的封装

boot对弹性封装的非常好

项目换行

flex-*-wrap

flex-*-nowrap    *:sm/md/lg/xl

主轴方向

flex-*-row

flex-*-row-reverse

flex-*-column

flex-*-column-reverse

*:sm/md/lg/xl

项目们在主轴上的排列方式

justify-content-*-between

justify-content-*-around

justify-content-*-start

justify-content-*-center

justify-content-*-end

*:sm/md/lg/xl

项目们在交叉轴上的排列方式

align-items-*-stretch

align-items-*-baseline

align-items-*-start

align-items-*-end

align-items-*-center

*:sm/md/lg/xl

5.文本框样式

form-control 块级,w-100 字体,背景,边框,过渡

.form-control {display: block;width: 100%;padding: 0.375rem 0.75rem;font-size: 1rem;line-height: 1.5;color: #495057;background-color: #fff;background-clip: padding-box;border: 1px solid #ced4da;border-radius: 0.25rem;transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

View Code

三.组件和插件

很多网页中的特效,需要使用js完成

boot把这些特效进行了封装,不需要写js就能出现效果

boot使用自定义属性的方式,进行了封装

1.下拉菜单

    <div class="dropdown"><button data-toggle="dropdown" class="btn btn-info dropdown-toggle">博客</button><ul class="dropdown-menu"><li><a href="#">管理</a></li><li><a href="#">随笔</a></li><li><a href="#">首页</a></li><li><a href="#">联系</a></li></ul></div>

View Code

结构

div. dropdown  相对定位

>btn. dropdown-toggle  向下小三角

+ul. dropdown-menu  display:none

事件

①激活事件的元素  btn  data-toggle="dropdown"

②事件作用的目标元素 ul  在标准结构中,有共同的父级元素,所以不需要绑定

效果

点击后

2.按钮组

btn-group 横向列表组   弹性,x轴,去掉中间的圆角

btn-group-vertical  纵向按钮组  弹性,y轴,去除中间圆角

按钮组大小 btn-group-sm/lg

    <h4>按钮组</h4><div class="btn-group-vertical btn-group-sm btn-group-lg"><a class="btn btn-danger" href="">红油火锅</a><a class="btn btn-warning" href="">可乐鸡翅</a><a class="btn btn-info" href="">北京烤鸭</a><a class="btn btn-success" href="">涪陵榨菜</a><a class="btn btn-primary" href="">南洲拉面</a></div>

View Code

    <!-- 纵向按钮组 --><div class="btn-group-vertical"><a class="btn btn-danger" href="">红油火锅</a><a class="btn btn-warning" href="">可乐鸡翅</a><a class="btn btn-info" href="">北京烤鸭</a><a class="btn btn-success" href="">涪陵榨菜</a><a class="btn btn-primary" href="">南洲拉面</a></div>

View Code

    <!-- 横向按钮组 --><div class="btn-group"><a class="btn btn-danger" href="">红油火锅</a><a class="btn btn-warning" href="">可乐鸡翅</a><a class="btn btn-info" href="">北京烤鸭</a><a class="btn btn-success" href="">涪陵榨菜</a><a class="btn btn-primary" href="">南洲拉面</a></div>

View Code

    <!-- 普通按钮组 --><a class="btn btn-danger" href="">红油火锅</a><a class="btn btn-warning" href="">可乐鸡翅</a><a class="btn btn-info" href="">北京烤鸭</a><a class="btn btn-success" href="">涪陵榨菜</a><a class="btn btn-primary" href="">南洲拉面</a>

View Code

效果为如图

3.信息提示框

div. alert  相对定位,圆角,内边距

.alert-danger  颜色

>span. close  关闭的小叉叉

事件

①激活事件  span  data-dismiss="alert"

②作用于大div  父子结构,不需要绑定

    <h4>信息提示框</h4><div class="alert alert-danger">中午,巴拉巴拉,下午巴拉巴拉 !<span data-dismiss='alert' class="close">×</span></div><input type="search"><a href="" class="btn btn-link">信息提示框</a>

View Code

4.导航

①水平导航

ul.nav   弹性,x轴

>li.nav-item

>a.nav-link

<h4>水平导航</h4><!-- justify-content-around 源码为justify-content: space-around --><!-- nav 弹性 换行  清除左内边距 下外边距 清除li前面的样式 --><ul class="nav justify-content-around"><!-- nav-link 转为block 悬停和获取焦点foucs去除下划线 --><li class='nav-item'><a class='nav-link' href="#">秒杀</a></li><li class='nav-item'><a class='nav-link' href="#">优惠券</a></li><li class='nav-item'><a class='nav-link'  href="#">闪购</a></li><li class='nav-item'><a class='nav-link' href="#">PLUS会员</a></li></ul>

View Code

②选项卡导航

ul.nav.nav-tabs

>li.nav-item

>a.nav-link

.active

div. tab-content

>div.tab-pane

.active

事件

①激活元素 a  data-toggle="tab"  绑定对应div href="#tab3"

②作用元素 div.tab-pane#tab3

    <h4>选项卡导航</h4><!-- nav-tabs与nav-item 和 nav-link配合使用 --><ul class="nav nav-tabs"><li class="nav-item"><!-- data-toggle='tab'点击a激活事件 active默认初始激活通多href找到对应的id内容 --><a data-toggle='tab' class="nav-link active" href="#tab1">魔兽点卡</a></li><li  class="nav-item"><a data-toggle='tab' class="nav-link" href="#tab2">星骓坐骑</a></li><li  class="nav-item"><a data-toggle='tab' class="nav-link" href="#tab3">百分百掉无敌</a></li><li  class="nav-item"><a data-toggle='tab' class="nav-link" href="#tab4">爱情火箭</a></li></ul><!-- tab-content与tab-pane配合使用使之隐藏display:none --><div class="tab-content"><!-- tab-content与active配合使用使之出现display:block --><div id="tab1" class="tab-pane active">一月 一季度  半年 一年</div><div id="tab2" class="tab-pane">世界boss 商城购买 拍卖行购买 副本掉落</div><div id="tab3" class="tab-pane">单刷 组队 野团 组团</div><div id="tab4" class="tab-pane">时空本 团本 无人副本 竞技场</div></div>

View Code

③胶囊导航

ul.nav.nav-pills

>li.nav-item

>a.nav-link

.active

div. tab-content

>div.tab-pane

.active

事件

①激活元素 a  data-toggle="pill"  绑定对应div href="#tab3"

②作用元素 div.tab-pane#tab3

 1             <h4>胶囊导航</h4>2             <!--  nav-pills 与nav-link配合添加圆角-->3             <ul class="nav nav-pills">4                 <li class="nav-item">5                     <a href="#pill1" data-toggle='pill' class="nav-link active">鞋子</a>6                 </li>7                 <li class="nav-item">8                     <a href="#pill2" data-toggle='pill' class="nav-link">手表</a>9                 </li>
10                 <li class="nav-item">
11                     <a href="#pill3" data-toggle='pill' class="nav-link">电脑</a>
12                 </li>
13                 <li class="nav-item">
14                     <a href="#pill4" data-toggle='pill' class="nav-link">汽车</a>
15                 </li>
16             </ul>
17
18             <div class="tab-content">
19                 <div id="pill1" class="tab-pane active">AJ1,AJ3,AJ6,AJ7,AJ11,Yeeze</div>
20                 <div id="pill2" class="tab-pane">理查德 江诗丹顿 百达翡丽 劳力士 小天才</div>
21                 <div id="pill3" class="tab-pane">机械键盘 switch RTX3080TI 红白机</div>
22                 <div id="pill4" class="tab-pane">911 Panama 毒药 五菱宏光 GTR 大G F650 地狱猫 恩佐</div>
23             </div>

View Code

5.响应式导航栏

div. navbar  弹性,x轴,两端对齐,交叉轴居中,可换行

. navbar-expand-sm/md/lg/xl 让ul的主轴在某个屏幕以上变成x轴

>ul.navbar-nav 弹性,y轴主轴

>li.nav-item

>a.nav-link

    <h4>响应式导航栏</h4><!--navbar相对定位,弹性,换行,交叉轴居中,主轴两端对齐,内边距  --><!-- navbar-expand-md 响应中屏下,x轴为主轴,不换行,主轴起点对齐--><div class="navbar navbar-expand-md"><!--  navbar-nav弹性y轴主轴 去除li样式,下外边距清除 做内边距清除--><ul class="navbar-nav"><li class="nav-item"><a class="nav-link" href="">法拉利</a></li><li class="nav-item"><a class="nav-link" href="">兰博基尼</a></li><li class="nav-item"><a class="nav-link" href="">布加迪</a></li><li class="nav-item"><a class="nav-link" href="">迈巴赫</a></li><li class="nav-item"><a class="nav-link" href="">Panama</a></li><li class="nav-item"><a class="nav-link" href="">东风大运</a></li></ul></div>

View Code

6.折叠

.btn  data-toggle="collapse" data-target="#c1"

div. collapse#c1  隐藏

1             <h4>折叠</h4>
2             <!--data-target='#c1' 点击按钮找到id对应的内容 data-toggle='collapse' 调用事件collapse隐藏 -->
3             <!-- btn btn-danger按钮样式 -->
4             <button data-target='#c1' data-toggle='collapse' class="btn btn-danger">折叠</button>    <!-- href='#c1'也可替代data-target='#c1' 但不推荐如此-->
5             <!-- collapse display:none隐藏-->
6             <div id="c1" class="collapse">
7                 巴拉巴拉巴拉 <br>
8                 巴拉 巴拉 巴拉
9             </div>

View Code

7.卡片

div.card 弹性,y轴

>div.card-header

+div.card-body

+div.card-footer

 1         2             3             <h4>卡片</h4>4         <!-- card 定位 弹性y轴为主轴 最小宽度 边框 圆角 -->5             <div class="card">6                 <!-- card-header 下外边框  内边距 背景色 下边框 -->7                 <div class="card-header">8                     <h3>卡片标题</h3>9                 </div>
10                 <!-- card-body 四条内边距 弹性flex:1 1 auto -->
11                 <div class="card-body">
12                     <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quisquam natus tempore laboriosam beatae rerum eveniet sint accusantium dolorum aut quas repellat distinctio nesciunt vel deserunt autem atque in fugit laborum.</p>
13                 </div>
14                 <!--card-footer 内边距 背景 上边框  -->
15                 <div class="card-footer">
16                         <p>联系方式</p>
17                 </div>
18             </div>
19             

View Code

8.手风琴

结合卡片和折叠

 1     <h4>手风琴</h4>2             <!-- 结合卡片和折叠做出的效果 -->3             <div id="fuqin">4                 5                 <div class="card">6                     7                     8                     <div class="card-header">9                         <a data-toggle='collapse' href="#col_1">卡片1</a>
10                     </div>
11
12                     <div data-parent='#fuqin' id="col_1" class="collapse">
13                     <div class="card-body " >
14                             Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ut neque soluta iste distinctio eos corrupti vel eligendi error facere pariatur suscipit autem magnam veniam doloribus totam accusamus repellendus in cupiditate.
15                         </div>
16                     </div>
17
18
19                      <div class="card-header">
20                          <a data-toggle='collapse' href="#col_2">卡片2</a>
21                      </div>
22
23                      <div data-parent='#fuqin' id="col_2" class="collapse">
24                      <div class="card-body " >
25                              Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ut neque soluta iste distinctio eos corrupti vel eligendi error facere pariatur suscipit autem magnam veniam doloribus totam accusamus repellendus in cupiditate.
26                          </div>
27                      </div>
28
29
30                      <div class="card-header">
31                          <a data-toggle='collapse' href="#col_3">卡片3</a>
32                      </div>
33
34                      <div data-parent='#fuqin' id="col_3" class="collapse">
35                      <div class="card-body " >
36                              Lorem ipsum dolor sit amet, consectetur adipisicing elit. Ut neque soluta iste distinctio eos corrupti vel eligendi error facere pariatur suscipit autem magnam veniam doloribus totam accusamus repellendus in cupiditate.
37                          </div>
38                      </div>
39
40                 </div>
41             </div>
42         

View Code

9.媒体对象

div. media  弹性,x轴 ,交叉轴起点

 1 <h4>媒体对象</h4>2             <!-- media 弹性交叉轴起点对齐 -->3             <div class="media border border-danger p-2 rounded">4                 <img style="width: 8rem;border: 1px solid #000000;" src="data:image/10.png" alt="">5                 <div>6                     <h4>闪亮闪亮</h4>7                     <p>闪亮的薏米</p>8                 </div>9             </div>
10             

View Code

10.折叠导航栏

div.navbar

.navbar-dark 我当前这个导航栏的背景是深色,请把我内部所有文本变成浅色

①让不隐藏的a标签,文本为浅色

②让ul中的a标签,文本为浅色

③让按钮中的三条线,文本为浅色

. bg-dark

. navbar-expand-lg ①配合.navbar-nav让ul的主轴在lg以上变为x轴(li横向显示)

在lg以下默认为y轴(li纵向显示)

②配合.navbar-toggler让button在lg以上隐藏,在lg以下显示

③配合.navbar-collapse让ul在lg以上显示,在lg以下隐藏

>a.navbar-brand 永远显示的a标签

+button.navbar-toggler

>span.navbar-toggler-icon  按钮中的三条线

+div.collapase.navbar-collapse

>ul.navbar-nav

>li.nav-item>a.nav-link

 1 <!-- navbar 弹性 换行 交叉轴居中 两端对齐  -->2         <!-- navbar-dark 背景为深色字体为浅白色 -->3         <!-- navbar-expand-lg 配合对应屏幕下对应样式 -->4         <div class="navbar navbar-dark bg-success navbar-expand-lg">5             <!-- navbar-brand 行内块 不换行 继承行高-->6             <a href="#" class="navbar-brand">bootstrap</a>7             <!-- navbar-toggler 字体大小 行高1倍字体 背景透明 圆角 边框 -->8             <!--  data-toggle='collapse'配合navbar-expand-lg 隐藏-->9             <!-- data-target='#col_6' 事件下拉框 -->
10             <button class="navbar-toggler " data-toggle='collapse' data-target='#col_6'>
11                 <!--navbar-toggler-icon行内块 高宽 内容为空 文本居中 背景不重复居中 背景大小百分比 与另一个navbar-dark配合一起使用添加背景
12                     .navbar-dark .navbar-toggler-icon {
13                       background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
14                     }
15                     -->
16                 <span class="navbar-toggler-icon"></span>
17             </button>
18
19
20             <!-- navbar-collapse与 navbar-expand-lg配合对应屏幕下隐藏-->
21             <!-- collapse 隐藏  id与data-target配合调用 -->
22             <div class="navbar-collapse collapse" id="col_6">
23                 <!--  navbar-nav弹性y为主轴 去除li样式-->
24                 <ul class="navbar-nav">
25                     <!-- nav-link块级 -->
26                     <li class="nav-item"><a href="#" class="nav-link">aass</a></li>
27                     <li class="nav-item"><a href="#" class="nav-link">aass</a></li>
28                     <li class="nav-item"><a href="#" class="nav-link">aass</a></li>
29                     <li class="nav-item"><a href="#" class="nav-link">aass</a></li>
30                     <li class="nav-item"><a href="#" class="nav-link">aass</a></li>
31                     <li class="nav-item"><a href="#" class="nav-link">aass</a></li>
32                 </ul>
33             </div>
34         </div>

View Code

11徽章

小按钮

badge  基本类

badge-danger/warning....

badge-pill 胶囊

 1     <h4>徽章</h4>2             <!-- list-unstyled 去除li样式 -->3             <ul class="list-unstyled ">4                 <!-- list-group-item 圆角 -->5                 <li class="list-group-item">6                     <!--badge 行内块 内边距 字体大小75% 字体加粗700  行高1倍字体 文本居中 基线对齐 圆角  -->7                     <!-- badge-danger 字体颜色 背景色 -->8                     点赞<a href="#" class="badge badge-danger">21212</a>9                 </li>
10
11                 <li class="list-group-item">
12                     关注<a href="#" class="badge badge-warning badge-pill">22002</a>
13                 </li>
14
15                 <li class="list-group-item">
16                     踩<a href="#" class="badge badge-success">2112</a>
17                 </li>
18             </ul>
19             

View Code

12.焦点轮播图

结构

第一部分结构

div.carousel 相对定位

>div.carousel-inner 相对定位,w-100,溢出隐藏

>div .carousel-item 隐藏

.active  显示

>img.w-100

第一部分事件

在最外层div.carousel 中添加  data-ride="carousel"

第二部分结构  轮播指示器

div.carousel#demo

ul.carousel-indicators

>li

第二部分事件 li   data-slide-to="图片的下标,从0开始"

data-target="#demo"

第二部分需要重写样式

.carousel-indicators li{

width: 0.8rem;height: 0.8rem;

background-color: #fff;

border-radius: 50%;

margin: 0 5px;

}

.carousel-indicators li.active{

background-color: #0aa1ed;

}

第三部分的结构 左右箭头

a. carousel-control-next/prev

>span. carousel-control-next/prev-icon

第三部分重写的样式

.carousel-control-next{

width: 4%;height: 20%;

background-color: #aaa;

border-radius: 0.25rem;

top:40%;

}

.carousel-control-prev{left: 0.25rem;}

.carousel-control-next{right: 0.25rem;}

第三部事件

<a data-slide="next" class="carousel-control-next" href="#demo">

<span class="carousel-control-next-icon"></span>

</a>

<a data-slide="prev" class="carousel-control-prev" href="#demo">

<span class="carousel-control-prev-icon"></span>

</a>

 1     <style type="text/css">2             /* 重新设置li样式 */3             .carousel-indicators li{4                 width: 0.8rem;height: 0.8rem;5                 background-color: #FFF3CD;6                 border-radius: 50%;7                 margin: 0 5px;8             }9             .carousel-indicators li.active{10                 background-color: #0AA1ED;
11             }
12             .carousel-indicators li:hover{13                 cursor: pointer;
14             }
15
16
17
18             /* 重新设置箭头a标签的样式 */
19             .carousel-control-prev,
20             .carousel-control-next {21                 width: 4%;
22                 height: 20%;
23                 background-color: #AAAAAA;
24                 border-radius: 0.25rem;
25                 top: 40%;
26             }
27             .carousel-control-prev{left: 0.25rem;}
28             .carousel-control-next{right: 0.25rem;}
29
30
31         </style>
32
33
34     <!-- carousel相对定位 -->
35             <!-- 在最外层div添加data-ride 开启事件其旋转木马(自动轮播图片)-->
36             <!--id="demo"方便左右箭头控制以及点击按钮切换  -->
37             <div class="carousel" data-ride='carousel' id="demo">
38             <!-- 1轮播图片 -->
39             <!-- carousel-inner 相对定位 w-100与父元素等宽 溢出隐藏占页面空间 -->
40             <div class="carousel-inner">
41                 <!-- carousel-item 定位 隐藏不占页面空间 -->
42                 <!-- active 用于显示 只在一个carousel上加 -->
43                 <div class="carousel-item active">
44                     <!-- 图片w-100让图片充满 -->
45                     <img class="w-100" src="banner1.png">
46                 </div>
47                 <div class="carousel-item">
48                     <img class="w-100" src="banner2.png">
49                 </div>
50                 <div class="carousel-item">
51                     <img class="w-100" src="banner3.png">
52                 </div>
53                 <div class="carousel-item">
54                     <img class="w-100" src="banner4.png">
55                 </div>
56             </div>
57             <!-- 2 轮播指示器 -->
58             <!-- carousel-indicators轮播指示器 定位,样式-->
59             <ul class="carousel-indicators">
60                 <!-- active 与第一个active对应 -->
61                 <!--  data-slide-to='0' 鼠标自动切换对应下标的图片从0开始-->
62                 <!-- 由于li点击控制的是整个轮播图 所以点击绑定外层div id data-target='#demo'-->
63                 <li class="active" data-slide-to='0' data-target='#demo'></li>
64                 <li data-slide-to='1' data-target='#demo'></li>
65                 <li data-slide-to='2' data-target='#demo'></li>
66                 <li data-slide-to='3' data-target='#demo'></li>
67             </ul>
68             <!-- 3左右箭头 -->
69             <!-- carousel-control-next添加右箭头(占位很大需要重新设置样式) -->
70             <!-- data-slide='next'事件点击后切换图片 -->
71             <a href="#demo" class="carousel-control-next" data-slide='next'>
72                 <!--carousel-control-next-icon添加右箭头图标  -->
73                 <span class="carousel-control-next-icon"></span>
74             </a>
75             <!-- data-slide='prev'事件点击后切换图片 -->
76             <a href="#demo" class="carousel-control-prev" data-slide='prev'>
77                 <span class="carousel-control-prev-icon"></span>
78             </a>
79
80
81             </div>

View Code

13.巨幕

jumbotron  巨大的内边距,背景灰色,圆角

1     <h4>巨幕</h4>
2             <!-- jumbotron 大内边距 背景灰色 圆角 -->
3             <!-- bg-primary 改变背景色 -->
4             <div class="jumbotron bg-primary">
5                 欢迎来到博客园!
6             </div>

View Code

14.分页条

结构

ul. pagination  弹性,x轴,去除左内边距,去除列表标识项

>li.page-item 让第一个li和最后一个li中的a添加圆角

. disabled 禁用

.active  选中

>a.page-link  设置了边框,文本,背景,以及伪类的样式

        <style type="text/css">.page-item+.page-item{margin-left: 10px;}.page-link{border-radius: 0.25rem;padding-left: 15px;padding-right: 15px;}/* 自定义背景 */.mybg{background: linear-gradient(to bottom,#f5f4f5 0%,#e6e6e5 100%);}/* 第一页背景 */.page-item .disabled .page-link{background-color:#F8F8F8 ;}/* 悬停边框色 */.page-link:hover{background-color: transparent;border-color: #0AA1ED;}<h4>分页</h4><!-- div修改部分样式 居右 背景 内边距 等 --><div class="d-flex justify-content-end pr-5 py-2 mybg"><!-- 结构ul>li*n>a --><!-- pagination 弹性 x轴 出去左内边距 去列表标识  圆角--><ul class="pagination mb-0"><!-- page-item 最后一个和第一个a标签加圆角--><!-- disabled 禁用 --><li class="page-item disabled"><!-- page-link设置边框文本背景以及伪类的样式 --><a href="#" class="page-link">上一页</a></li><!-- active 被选中 --><li class="page-item active"><a href="#"  class="page-link">1</a></li><li class="page-item"><a href="#"  class="page-link">2</a></li><li class="page-item"><a href="#"  class="page-link">3</a></li><li class="page-item"><a href="#"  class="page-link">4</a></li><li class="page-item"><a href="#"  class="page-link">下一页</a></li></ul></div>

View Code

15..面包屑导航

结构

每个li之间有连接符号的导航

ul. breadcrumb  弹性,x主轴,可换行,背景色

>li. breadcrumb-item  让除了第一个li其它的li之前都添加一个连接符号

我们可以重写连接符号

.breadcrumb-item + .breadcrumb-item::before{

content:">";

}

<style type="text/css">.breadcrumb-item + .breadcrumb-item::before{content: '>';/* 修改连接符 */}</style><h4>面包屑导航</h4><!--breadcrumb 弹性 x轴主轴 可换行 添加背景色 --><ul class="breadcrumb bg-transparent"><!--breadcrumb-item 与后面的 breadcrumb-item 添加连接符 可以重写 --><li class="breadcrumb-item"><a class="text-dark small" href="#">博客园</a></li><li class="breadcrumb-item"><a class="text-dark small" href="#">学习用品</a></li><li class="breadcrumb-item"><a class="text-dark small" href="#">笔记本电脑</a></li><li class="breadcrumb-item"><a class="text-dark small" href="#">MBP2020</a></li></ul>

View Code

bootstrap介绍的差不多了接下来介绍scss传送门https://www.cnblogs.com/CIBud/p/14322399.html

Boot strap相关推荐

  1. boot Strap笔记(哈哈哈哈)

    目录 介绍 部署(第一次要联网) 3行 JS 注意头部编码地区 盒尺寸 Container容器 All-in-one(一个容器中定义) 流式布局 栅格 栅格选项 自动布局列 设置一列宽度 可变宽度的弹 ...

  2. boot Strap Tab -- load 的使用

    项目里面使用的是Boot Strap Tab来操作的,搞得我一直很蒙圈,对于我这样的小白来说,有点难以理解,下面谈谈个人理解. Boot Strap Tab是用来对表格进行操作的,里面提供了一系列的属 ...

  3. 适合后端开发者的Boot Strap学习笔记

    Boot Strap 1.Boot Strap 的引言 Bootstrap是美国Twitter公司的设计师Mark Otto和Jacob Thornton合作基于HTML.CSS.JavaScript ...

  4. ruby on rails 中使用boot strap(先存起来,还没试过)

    1.首先安装  gem 'twitter-bootstrap-rails' ,运行bundle install 2.初始化 rails generate bootstrap:install less  ...

  5. The JVM Architecture Explained-JVM架构解析(译)

    2019独角兽企业重金招聘Python工程师标准>>> 翻译原文:https://dzone.com/articles/jvm-architecture-explained JVM架 ...

  6. JVM class加载机制的总结 收藏

    JVM class加载机制的总结 收藏 一 Java2类装载机制的缺省实现 我们知道在Java中实例化一个对象以前,需要将对象的类文件加载到虚拟机并完成连接和类型初始化等操作(事实上很多情况下,不实例 ...

  7. 关于对cpu的理解和kvm虚拟机到物理cpu的绑定

    这段时间一直在想,云计算除了虚拟化之外,还应该有其它的东西,那就是优化.因为我们虚拟出来资源之后怎么用,怎么划分,是并行也好,是租给用户使用也好,都要实现资源调度和使用的最优化.嗯,这是这段时间关于云 ...

  8. 重要头文件: cc430x613x.h

    2019独角兽企业重金招聘Python工程师标准>>> 重要头文件: cc430x613x.h 来自:http://www.inventortown.com/includes/cc4 ...

  9. ubuntu9.10硬盘安装记录一

    Ubuntu9.10安装 下载 至http://releases.ubuntu.com/karmic/ubuntu-9.10-beta-desktop-i386.iso 下载到 c: 下重命名为 ub ...

最新文章

  1. css 定位及遮罩层小技巧
  2. postgresql的安装与配置
  3. java怎么获取文本里的值_怎么获取到text中的文本,或者title中的值
  4. 易语言源代码毁来者来了!!
  5. 微信小程序中 button丢失其默认样式
  6. 【学习 OpenCV】—— core.hpp 核心api
  7. quartus打开Simulator Tool生成网表进行功能仿真
  8. JAX-WS(三)构建简单webservice部署到tomcat上
  9. 跨域技术-jsonp
  10. Farseer Physics Engine
  11. RedHat 5.6_x86_64 + ASM + RAW+ Oracle 10g RAC (二)
  12. 纯干货分享 | 考PMP留下来的一些重要资料(收藏下载)
  13. abaqus .cae文件默认程序设置
  14. dell台式机安装centos7网卡设置
  15. github博客Hexo引流到微信
  16. JEB2插件教程之一JEB2AutoRenameByTypeInfo.py
  17. dac104s085芯片驱动讲解
  18. 10款相似图片搜索引擎
  19. flutter如何获取连接高德地图的SHA1和PackageName
  20. Anaconda使用matplotlib画图中文乱码解决办法

热门文章

  1. 数论之互质与欧拉函数
  2. layui 表格加载动画_仅需四步!BIM模型变身为漫游动画!
  3. 腾讯校友的创业江湖 :2018腾讯系离职员工创业图谱
  4. GBASE 8s中 onunloadonload
  5. Windows下Docker启动Elasticsearch报max virtual memory areas vm.max_map_count [65530] is too low, increase
  6. Ubuntu18.04 分屏显示问题解决
  7. 如何在CentOS中加入sl(跑火车)命令
  8. 《计算机文化基础》 北京理工大学出版社,大学计算机基础教学合同(杜丽).doc...
  9. 推荐几个蚂蚁、腾讯、抖音大佬的公众号
  10. 英雄不问出处 美女不问归途