1.概念
一个前端开发的框架,Bootstrap,来自Twitter,是目前很受欢迎的前端框架。Bootstrap 是基于HTML、css、JavaScript的,它简洁灵活,使得web开发更加快捷。
-
框架:一个半成品软件,开发人员可以在框架的基础上,进行开发,简化编码。
-
好处:
-
定义了很多的css样式和js插件。我们开发人员可以直接使用这些样式和插件得到丰富的页面效果。
-
响应式布局
-
同一套页面可以兼容不同分辨率的设备。
-
-
2.快速入门
-
下载Bootstrap:https://v3.bootcss.com/getting-started/#download
-
在项目中将这三个文件夹复制
-
创建html页面,引入必要的资源文件
<!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 href="css/bootstrap.min.css" rel="stylesheet"> <!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) --> <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script> <!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 --> <script src="js/bootstrap.min.js"></script> </head> <body> <h1>你好,世界!</h1> </body> </html>
3.响应式布局
-
同一套页面可以兼容不同分辨率的设备
-
实现:依赖于栅格系统:将一行平均分成12个格子,可以指定元素占几个格子
-
步骤:
-
定义容器。相当于之前的table
-
容器分类:
-
container: 两边有留白 超小屏幕100%
-
container-fluid: 100%宽度(任何设备)
-
-
-
定义行。相当于之前的tr 样式:row
-
定义元素。指定该元素在不同的设备上,所占的格子数目。 样式:col-设备代号-格子数目
-
xs:超小屏幕 手机 col-xs-12
-
sm: 小屏幕 平板电脑 col-sm-12
-
md: 中等屏幕 桌面显示器 col-md-12
-
lg: 大屏幕 台式显示器 col-lg-12
-
-
-
注意:
-
一行中如果格子数目超出12,则超出部分自动换行
-
栅格类属性可以向上兼容。栅格类适用于与屏幕宽度大于或等于分界点大小的设备
-
如果真实设备宽度小于了设置栅格类属性的设备代码的最小值,会一个元素沾满一整行。
-
<!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 href="css/bootstrap.min.css" rel="stylesheet"> <!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) --> <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script> <!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 --> <script src="js/bootstrap.min.js"></script> <style> .inner{ border: 1px solid red; } </style> </head> <body> <!--1.定义容器--> <div class="container"> <!--2.定义行--> <div class="row"> <!--3.定义元素 在大显示器一行12个格子 在pad上一行6个格子 --> <!--<div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div> <div class="col-lg-1 col-sm-2 inner">栅格</div>--> <div class="col-md-4 inner">栅格</div> <div class="col-md-4 inner">栅格</div> <div class="col-md-4 inner">栅格</div> <div class="col-md-1 inner">栅格</div> </div> </div> </body> </html>
4.CSS样式和JS插件
-
全局的css样式:
-
按钮 : class = "btn btn-default"
-
图片:
-
class = "img-responsive":图片在任意尺寸都占100%
-
图片形状
<img src="..." alt="..." class="img-rounded">方形 <img src="..." alt="..." class="img-circle">圆形 <img src="..." alt="..." class="img-thumbnail">椭圆
-
-
表格
-
table
-
table-bordered
-
table-hover
-
-
表单
-
-
组件:
-
导航条
-
分页条
-
-
插件:
-
轮播图
-