一、Bootstrap介绍
WWW
What?
①.诞生于2011年,来自Twitter公司,是目前最受欢迎的前端框架
②.是一个用于快速开发Web应用程序和网站的前端框架
③.Bootstrap是基于HTML、CSS、JS的,简洁灵活,使得Web开发更加快捷
概述:Bootstrap是一个建立一个页面,就可以在三个终端(PC端、平板、手机)上完美展示的响应式前端框架
Why?
①.响应式设计(Bootstrap的响应式CSS能够自适应台式机、平板电脑和手机)
②.移动设备优先
③.浏览器支持
④.容易上手
Where?
企业网站、博客、网站后台之类的网站
电商(电商网站分类太多)
课程目标
实现网上书城部分界面布局
二、 环境安装
1、下载Bootstrap库
https://v4.bootcss.com/2、页面中引入库
bootstrap.css:Bootstrap核心样式【添加到head标签中】
jquery-3.3.1.js:jQuery库【注意:必须在Bootstrap核心库引入之前引入jQuery库】
bootstrap.js:Bootstrap核心库
【注:需添加到</body>之前】
三. 案例
案例1:查询按钮原生态实现对比Bootstrap方式实现
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>对比原生态的button和Bootstrap的button区别</title>
<link rel="stylesheet" href="./css/bootstrap.min.css" />
<script src="js/bootstrap.min.js" type="text/javascript" charset="UTF-8"></script>
<script src="js/jquery-3.6.0.min.js" type="text/javascript" charset="UTF-8"></script>
<style>
button{
/* 手势 */
cursor: pointer;
}
</style>
</head>
<body>
<button>原生态按钮</button>
<button class="btn btn-danger">首按钮</button>
<button class="btn btn-default">二按钮</button>
<button class="btn btn-info">三按钮</button>
<button class="btn btn-warning">四按钮</button>
<button class="btn btn-primary">五选项</button>
<button class="btn btn-link">六按钮</button>
</body>
</html>
案例2:演示Bootstrap页面在手机浏览器中展示效果
在head中添加:
<meta name="viewport" content="width=device-width,initial-scale=1.0">
width=device-width:呈现在不同设备上
initial-scale=1.0:以1:1比例呈现,不会有任何缩放
user-scalable=no:禁用网页缩放功能
maximum-scale=1.0:页面放大程序,1.0将禁止用户放大实际尺寸
案例3:首页导航&搜索区域原生态实现(div+css)
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Document</title>
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
<!-- 引入bootstrap的CSS -->
<link rel="stylesheet" type="text/css" href="bootstrap-3.3.7-dist/css/bootstrap.css" />
<!-- 分别引入jQuery的js和Bootstrap的js -->
<script src="bootstrap-3.3.7-dist/js/jquery-3.5.1.js" type="text/javascript" ></script>
<script src="./bootstrap-3.3.7-dist/js/bootstrap.js" type="text/javascript" ></script>
<style type="text/css">
.navbar-collapse {
/* 1代表弹性扩大占用父容器剩余空间 0代表不占用 */
flex-grow: 0;
}
.ss {
/* 高度 */
height: 100px;
/* 背景颜色 */
background-color: #DCDCDC;
/* 上间距 */
margin-top: 20px;
}
.form-group {
/* 宽度 */
width: 300px;
/* 左间距 */
margin-left: auto;
/* 右间距 */
margin-right: auto;
/* 上间距 */
margin-top: 31px;
}
</style>
</head>
<body>
<!-- 导航条组件 -->
<nav class="navbar navbar-expand-lg navbar-light bg-light">
<!-- 固定容器 -->
<div class="container">
<a class="navbar-brand" href="#">您好,欢迎来到网上书店</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavAltMarkup" aria-controls="navbarNavAltMarkup"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNavAltMarkup">
<div class="navbar-nav">
<a class="nav-link active" href="#">首页 <span class="sr-only">(current)</span></a>
<a class="nav-link" href="#">登录</a>
<a class="nav-link" href="#">注册</a>
<a class="nav-link" href="#">我的购物车</a>
</div>
</div>
</div>
</nav>
<!-- 栅格系统实现首页框架 -->
<div class="container">
<!-- 第一行:搜索区域 -->
<div class="row ss">
<div class="col">
<form>
<div class="form-group">
<div class="input-group mb-3">
<input type="text" class="form-control" placeholder="书籍关键字" aria-label="Recipient's username" aria-describedby="button-addon2">
<div class="input-group-append">
<button class="btn btn-primary" type="button" id="button-addon2">查询</button>
</div>
</div>
</div>
</form>
</div>
</div>
<!-- 第二行 -->
<div class="row">
<div class="col-3" style="background-color: pink;">
左3-书籍分类
</div>
<div class="col-12" style="background-color: skyblue;">
<!-- 右9-轮播图&新书上架&热门书籍 -->
右9中第一行轮播图
</div> -->
<div class="row">
<!-- 右9中第二行新书上架 -->
<div class="col" style="background-color: darkorange;">
①新书上架
</div>
<div class="col" style="background-color: darkorange;">
②新书上架
</div>
<div class="col" style="background-color: darkorange;">
③新书上架
</div>
</div>
<div class="row">
<!-- 右9中第三行热门书籍 -->
<div class="col" style="background-color: plum;">
①热门书籍
</div>
<div class="col" style="background-color: plum;">
②热门书籍
</div>
<div class="col" style="background-color: plum;">
③热门书籍
</div>
</div>
</div>
</body>
</html>