bookstrap之笔记

目录

  1. Bootstrap简介
  2. Bootstrap的引入(拿来主义)
  3. Bootstrap布局容器(前端页面响应式开发前提)
  4. Bootstrap之响应式布局(栅格系统)
  5. Bootstrap之响应式工具(分辨率变化时隐藏与可见某些盒子)

1. Bootstrap简介

Bootstrap来自Twitter(推特),是目前最受欢迎的前端框架。Bootstrap是基于HTML、CSS和JavaScript的,它简洁灵活,使得web开发更迅速

框架:顾名思义就是一套架构,它有一套比较完整的网页功能解决方案,而且控制权在框架本身,有预置样式库,组件和插件。使用者要按照框架所规定的某种规范进行开发
优点

  • 标准化的html+css编码规范
  • 提供了一套简洁、直观、强悍的组件
  • 有自己的生态圈,不断的更新迭代
  • 让开发更简单,提高了开发的效率

版本

  • 2.x.x:停止维护
  • 3.x.x:目前使用最多,稳定,但是放弃了IE6-IE7。对IE8支持但是界面效果不好,偏向用于开发响应式布局、移动设备优先的WEB项目
  • 4.x.x:最新版,目前还不是很流行

2. Bootstrap的引入(拿来主义)

返回目录

控制权在框架本身,使用者要按照框架所规定的某种规范进行开发
Bootstrap使用个要点:

  • 创建文件夹结构(下载bootstrap)
  • 创建html骨架结构
  • 引入相关样式文件
  • 书写内容

第一步下载Bootstrap:(中文官网下载)
在这里插入图片描述
在这里插入图片描述
解压后进去找到以下文件夹:
在这里插入图片描述
复制这三个文件夹到项目根目录下

第二步使用Bootstrap:
复制下面代码,作为基础模板,用一个最简单的Bootstarp文档开始工作

<!doctype html>
<html lang="zh-CN">
  <head>
    <meta charset="utf-8">
    <!--要求当前网页使用IE浏览器最高版本的内核来渲染-->
    <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="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css" integrity="sha384-HSMxcRTRxnN+Bdg0JdbxYKrThecOKuH5zCYotlSAcp1+c8xmyTe9GYg1l9a69psu" crossorigin="anonymous">

    <!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询(media queries)功能 -->
    <!-- 警告:通过 file:// 协议(就是直接将 html 页面拖拽到浏览器中)访问页面时 Respond.js 不起作用 -->
    <!--[if lt IE 9]>
      <script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>
      <script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>
    <![endif]-->
  </head>
  <body>
    <h1>你好,世界!</h1>

    <!-- jQuery (Bootstrap 的所有 JavaScript 插件都依赖 jQuery,所以必须放在前边) -->
    <script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js" integrity="sha384-nvAa0+6Qg9clwYCGGPpDQLVpLNn0fRaROjHqs13t4Ggj3Ez50XnGQqc/r8MhnRDZ" crossorigin="anonymous"></script>
    <!-- 加载 Bootstrap 的所有 JavaScript 插件。你也可以根据需要只加载单个插件。 -->
    <script src="https://stackpath.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js" integrity="sha384-aJ21OjlMXNL5UyIl/XNwTMqvzeRMZH2w8c5cRVpzpU8Y5bApTppSuUkhZXN0VxHd" crossorigin="anonymous"></script>
  </body>
</html>

注意点在link的href与script的src为自己项目真实相对路径下的对应文件包中的后缀名.min.css/js文件!!!!!!!!!!:
例如:

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

到这里就写完引入的基本代码啦!

第三步检验Bootstrap是否引入成功:

<!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="bstrap/css/bootstrap.min.css">

<!--    <script src="https://cdn.jsdelivr.net/npm/html5shiv@3.7.3/dist/html5shiv.min.js"></script>-->
<!--    <script src="https://cdn.jsdelivr.net/npm/respond.js@1.4.2/dest/respond.min.js"></script>-->
</head>
<body>
        <a class="btn btn-default" href="#" role="button">Link</a>
        <button class="btn btn-default" type="submit">Button</button>
        <input class="btn btn-default" type="button" value="Input">
        <input class="btn btn-default" type="submit" value="Submit">

</body>
</html>

出现以下样式:
在这里插入图片描述
成功引入!!!!

第四步利用样式库开发内容
样式库查找:https://v3.bootcss.com/css/#overview

3. Bootstrap布局容器(前端页面响应式开发前提)

返回目录

bootstrap需要为页面内容和栅格包裹一个.container容器,Bootstrap预先定义好了这个类,叫.container,它提供了两个做此用处的类:
1.container类

  • 响应式布局的容器 固定宽度
  • 大屏(>=1200px)宽度定为1170px
  • 中屏(>=992px)宽度定位为970px
  • 小屏(>=768px)宽度为750px
  • 超小屏(100%)

样式效果图:
在这里插入图片描述
2.container-fluid类

  • 流式布局容器百分百宽度
  • 占据全部视口(viewport)的容器
  • 适合于单独做移动端开发

4. Bootstrap之响应式布局(栅格系统)

返回目录

4.1 栅格系统简介
栅格系统英文为“grid systems”,也有人翻译为“网格系统”,它是指将页面布局换分为等宽的列,然后通过列数的定义来模块化页面布局。
在这里插入图片描述
4.2栅格系统的使用
在这里插入图片描述
要求:

  • 行(row)必须放到container布局容器里面
  • 我们实现列的平均划分 需要给列添加类前缀
  • xs-extra small:超小;sm-small:小;md-medium:中等;lg-large:大
  • 列(column)大于12,多余的“列(column)”所在的元素将被作为一个整体另起一行排序
  • 每一列默认有左右15像素的padding
  • 可以同时为一列指定多个设备的类名,以便划分不同份数 例如:class=“col-md-a col-sm-6”

例一:
把12份划分给四个盒子(均分):

     <div class="container">
         <div class="col-lg-3">1</div>
         <div class="col-lg-3">2</div>
         <div class="col-lg-3">3</div>
         <div class="col-lg-3">4</div>
     </div>

在这里插入图片描述
为了看得清楚,我加上类名a和边框线,并给父盒子加上类名b设置颜色样式

.a{
    border: 1px solid red;
}
.b{
    background-color: pink;
}

例二:
把12份划分给四个盒子(不均分):

     <div class="container b">
         <div class="a col-lg-2">1</div>
         <div class="a col-lg-3">2</div>
         <div class="a col-lg-3">3</div>
         <div class="a col-lg-4">4</div>
     </div>

在这里插入图片描述
在这里插入图片描述
例三:
把12份划分给四个盒子(超过十二份):

<div class="container b">
         <div class="a col-lg-2">1</div>
         <div class="a col-lg-3">2</div>
         <div class="a col-lg-5">3</div>
         <div class="a col-lg-4">4</div>
     </div>

往下挤一个:
在这里插入图片描述
在这里插入图片描述
例四:
把12份划分给四个盒子(不足十二份):

     <div class="container b">
         <div class="a col-lg-2">1</div>
         <div class="a col-lg-3">2</div>
         <div class="a col-lg-2">3</div>
         <div class="a col-lg-1">4</div>
     </div>

位置空出来:
在这里插入图片描述
在这里插入图片描述

在.container类盒子里面12份是硬规定
例五:(列嵌套)
在一个div划分的盒子中再划分盒子(只需要把父盒子加上container类名,并给子盒子加上划分份数即可)

<div class="container b">
    <div class="a col-lg-2 container">
        <div class="col-lg-3">a</div>
        <div class="col-lg-3">b</div>
        <div class="col-lg-3">c</div>
        <div class="col-lg-3">d</div>
    </div>
    <div class="a col-lg-3">2</div>
    <div class="a col-lg-3">3</div>
    <div class="a col-lg-4">4</div>
</div>

增加样式:

.a{
    border: 1px solid red;
}
.b{
    background-color: pink;
}
.a:nth-of-type(1) div{
    border: 1px solid yellow;
}

效果图:
在这里插入图片描述
当屏幕缩小:它们都独占一行显示:
在这里插入图片描述
此时为了满足响应式的布局,使一行放我们期望的盒子个数,则需要用不同屏幕下的类名,
在这里插入图片描述
例六:

<div class="container b">
    <div class="a col-lg-2 col-md-4">1</div>
    <div class="a col-lg-3 col-md-4">2</div>
    <div class="a col-lg-3 col-md-4">3</div>
    <div class="a col-lg-4 col-md-12">4</div>
</div>

在这里插入图片描述
还有col-xs,col-sm灵活运用即可!

例七:(列偏移col-md-offset-*)

<div class="container b">
    <div class="a col-lg-4 ">左侧</div>
    <div class="a col-lg-4 col-lg-offset-4">右侧</div>
</div>

右侧盒子偏移

在这里插入图片描述
例八:(列排序)
要求左右盒子互换(常用于屏幕缩小时)
在这里插入图片描述
方法:把右侧盒子拉过来col-md-pull-*
把左侧盒子推过去col-md-push-*

<div class="container b">
    <div class="a col-lg-8 col-md-push-8">左侧</div>
    <div class="a col-lg-4 col-md-pull-4">右侧</div>
</div>

在这里插入图片描述

5. Bootstrap之响应式工具(分辨率变化时隐藏与可见某些盒子)

返回目录
Bootstrap最新响应式工具拓展:https://v3.bootcss.com/css/#responsive-utilities
这里我只介绍常见的

类名超小屏小屏中屏大屏
.hidden-xs隐藏可见可见可见
.hidden-sm可见隐藏可见可见
.hidden-md可见可见隐藏可见
.hidden-lg可见可见可见隐藏

任何盒子:

    <div class="hidden-lg">大屏幕看不见我</div>
    <div class="hidden-md">中屏幕看不见我</div>
    <div class="hidden-sm">小屏幕看不见我</div>
    <div class="hidden-xs">超小屏幕看不见我</div>
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CharmDeer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值