Bootstrap概念
1. 概念: 一个前端开发的框架,Bootstrap,来自 Twitter,是目前很受欢迎的前端框架。Bootstrap 是基于 HTML、CSS、JavaScript 的,它简洁灵活,使得 Web 开发更加快捷。
框架:一个半成品软件,开发人员可以在框架基础上,在进行开发,简化编码。
好处:
1. 定义了很多的css样式和js插件。我们开发人员直接可以使用这些样式和插件得到丰富的页面效果。
2. 响应式布局。
同一套页面可以兼容不同分辨率的设备。 例如:http://m.taobao.com https://www.apple.com/
快速入门
下载Bootstrap
在项目中将这三个文件夹复制
min压缩版,上线之后一般用的压缩版
引入资源文件
手动引入jquery-3.2.1.min.js
根据参考文档找到基本模版 注意:引入文件的顺序问题
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
<title>Bootstrap 101 Template</title>
<!-- Bootstrap -->
<link rel="stylesheet" href="bootstrap-3.4.1-dist/css/bootstrap.min.css">
</head>
<body>
<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) -->
<script src="bootstrap-3.4.1-dist/js/jquery-3.4.1.js"></script>
<!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
<script src="bootstrap-3.4.1-dist/js/bootstrap.min.js"></script>
</body>
</html>
响应式布局
同一套页面可以兼容不同分辨率的设备。
实现:依赖于栅格系统:将一行平均分成12个格子,可以指定元素占几个格子
栅格系统:
- 定义容器。相当于之前的table、
容器分类:
1. container :两边留白
2. container-fluid:每一种设备都是100%宽度
- 定义行。相当于之前的tr 样式:row
- 定义元素。指定该元素在不同的设备上,所占的格子数目。样式:col-设备代号-格子数目
设备代号:
1. xs:超小屏幕 手机 (<768px):col-xs-12
2. sm:小屏幕 平板 (≥768px)
3. md:中等屏幕 桌面显示器 (≥992px)
4. lg:大屏幕 大桌面显示器 (≥1200px)
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
<title>Bootstrap 101 Template</title>
<!-- Bootstrap -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<style>
.row div {
border: 1px solid red;
}
</style>
</head>
<body>
<!-- 定义容器-->
<div class="container">
<!-- 定义行 -->
<div class="row">
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
<div class="col-md-1">.col-md-1</div>
</div>
<div class="row">
<div class="col-md-8">.col-md-8</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
<div class="col-md-4">.col-md-4</div>
</div>
<div class="row">
<div class="col-md-6">.col-md-6</div>
<div class="col-md-6">.col-md-6</div>
</div>
</div>
<!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) -->
<script src="js/jquery-3.4.1.js"></script>
<!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
<script src="hs/bootstrap.min.js" crossorigin="anonymous"></script>
</body>
</html>
注意:
- container留白
- 一行中如果格子数目超过12,则超出部分自动换行。
- 栅格类属性可以向上兼容。栅格类适用于与屏幕宽度大于或等于分界点大小的设备。.col-xs –>向上兼容
4. 如果真实设备宽度小于了设置栅格类属性的设备代码的最小值,缩小会一个元素沾满一整行。
列偏移
<!doctype html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
<title>入门</title>
<!-- bootstrap.min.css -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<style>
.row div{
border: 1px solid green;
}
</style>
</head>
<body>
<!-- 定义容器-->
<div class="container-fluid">
<!-- 第一行-->
<div class="row">
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
<div class="col-md-1">江一燕</div>
</div>
<!-- 列偏移-->
<div class="row">
<div class="col-md-4">col-md-4</div>
<div class="col-md-4 col-md-offset-4">col-md-4</div>
</div>
<!-- 列偏移-->
<div class="row">
<div class="col-md-3">col-md-3</div>
<div class="col-md-3 col-md-offset-6">col-md-3 col-md-offset-6</div>
</div>
<!-- 列偏移-->
<div class="row">
<div class="col-md-2 col-md-offset-4">col-md-2 col-md-offset-4</div>
<div class="col-md-6">col-md-6</div>
</div>
</div>
<!-- 引入jQuery -->
<script src="js/jquery-3.4.1.js"></script>
<!-- js/bootstrap.min.js -->
<script src="js/bootstrap.min.js"></script>
</body>
</html>