发布时间:2023-05-01 文章分类:WEB开发, 电脑百科 投稿人:赵颖 字号: 默认 | | 超大 打印

目录

BootStrap框架

BootStrap特点

bootstrap的使用

布局容器

固定宽度

完整宽度

栅格网格系统

前言

列的形式

列组合和列偏移 

列排序

列嵌套

排版

标题

段落

强调

对齐效果

列表

去点列表

内联列表

定义列表

代码

表格

表单标签

文本框和文本域 

单选框和复选框

复选框

单选框

按钮

设置按钮大小

设置按钮禁用

表单布局

前言

水平表单

内联表单

缩略图

面板

bootstrap插件

导航插件

导航栏的分类(加在ul内)

导航栏中的导航状态(加在li内)

标签式导航 

胶囊型导航 

垂直型导航 

两端对齐导航 

面包屑导航 

分页导航

页码导航

翻页导航

下拉菜单

注意:

模态框

模态框的使用

通过data属性使用模态框

通过js使用模态框 

总结:

BootStrap框架

理解:Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目。

bootstrap中文网:https://www.bootcss.com/

BootStrap特点

bootstrap的使用

导入Bootstrap的css文件:bootstrap.min.css

导入Bootstrap的js文件:bootstrap.min.js

导入jquery的js文件:jquery.js

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <!-- 使用X-UA-Compatible来设置IE浏览器的兼容模式 -->
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <!-- 
        viewport表示视口
        width=device-width指示视口的宽度用为设备屏幕的宽度
        initial-scale=1.0指示web页面的缩放比例为1(就表示不缩放)
     -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>bootstrap</title>
    <!-- 载入bootstrap的css -->
    <link href="./lib/bootstrap.min.css" rel="stylesheet"/>
    <!-- 若使用bootstrap的js插件,则必须先导入jquery(因为bootstrap是依赖于jquery的) -->
    <script src="./lib/jquery.js"></script>
    <!-- 载入bootstrap的js:包括所有的bootstrap的js插件或者可以根据需要使用的js插件的调用 -->
    <script src="./lib/bootstrap.min.js"></script>
</head>
<body>
    <h1>hello bootstrap</h1>
</body>
</html>

布局容器

固定宽度

container类用于固定宽度(宽度大小可以设置)并支持响应布局的容器(两侧会有留白,留白的大小取决于宽度的大小),但是高度需要具体大小来撑起

<style>
    .container{
        width: 300px;
        background-color: aquamarine;
    }
</style>
<body>
    <div class="container">
        hello bootstrap
    </div>
</body>

完整宽度

container-fluid类用于完整(100%)宽度,占全部视口的容器(若在此基础上设置宽度就变成固定宽度,两侧就会有留白效果)。

<style>
    .container-fluid{
        background-color: aquamarine;
    }
</style>
<body>
    <div class="container-fluid">
        hello bootstrap
    </div>
</body>

BootStrap基本使用

栅格网格系统

前言

bootstrap提供了一套响应式、移动设备优先的流式栅格系统,随着屏幕视口尺寸的增加,系统会自动分成最多12列。栅格系统用于通过一系列的行与列的组合来创建页面布局,你的内容就可以放到这些创建好的布局中

原理:通过定义容器的大小,平分成12份(也有平分成24/32份)最后结合媒体查询就制作出强大的响应式网格系统。bootstrap中的网格系统就是平分成12份

BootStrap基本使用

    <div class="container">
        <!-- 一行有12列 -->
        <div class="row">
            <div class="col-md-4">占4列</div>
            <div class="col-md-8">占8列</div>
        </div>
    </div>

列的形式

​
    <div class="container">
        <!-- 一行有12列 -->
        <div class="row">
            <!-- 设置大屏幕一次占列,小屏幕一次占6列 -->
            <div class="col-md-3 col-sm-6" style="background-color: papayawhip;">1</div>
            <div class="col-md-3 col-sm-6" style="background-color: yellow;">2</div>
            <div class="col-md-3 col-sm-6" style="background-color: skyblue;">2</div>
            <div class="col-md-3 col-sm-6" style="background-color: orange;">2</div>
        </div>
    </div>
​

注意:

列组合和列偏移 

列组合:更改数字来合并列(原则:列总和不能超过12,大于12则自动换到下一行) 

列偏移:该列偏移后,那么后面的所有列都跟着偏移

    <div class="container">
        <!-- 一行有12列 -->
        <div class="row">
            <!-- 该列距离左边有1个格子的偏移量 -->
            <div class="col-md-4 col-md-offset-1" style="background-color: antiquewhite;">占4列</div>
            <div class="col-md-4" style="background-color: yellow;">占4列</div>
        </div>
    </div>

列排序

含义:改变列的方向,就是改变左右浮动,并且设置浮动的距离。在bootstrap框架网格系统中是通过添加类名col-md-push-*和col-md-pull-*表示(图中*代表移动的列的组合数。)往前pull,往后push

    <div class="container">
        <!-- 一行有12列 -->
        <div class="row">
            <!-- 第一个块向右移动了2个列,第二个列没移动,因此第二个列盖住第一个列的后半部分 -->
            <div class="col-md-4 col-md-push-2" style="background-color: antiquewhite;">占4列</div>
            <div class="col-md-4" style="background-color: yellow;">占4列</div>
        </div>
    </div>

列嵌套

理解:你可以在一个列中添加一个或多个row行容器,然后在这个行容器中插入列

    <div class="container">
        <!-- 一行有12列 -->
        <div class="row">
            <div class="col-md-4">
                <div class="row">
                    <div class="col-md-4">1</div>    
                    <div class="col-md-4">2</div>    
                    <div class="col-md-4">3</div>    
                </div>
            </div>
            <div class="col-md-4">第二列</div>
        </div>
    </div>

排版

标题

  1. 定义标题都是使用标签<h1>到<h6>,相对于html来说bootstrap覆盖了其默认的样式,使用其在所有的浏览器下显示的效果一样。
  2. bootstrap定义了h1-h6六个类名,可以为非标题元素设置对应的标题样式。同时后面还可以紧跟着一行小的副标题<small></small>(或者类名为small的div块)
<body>
    <div class="h1">标题1<small>副标题</small></div>
    <h2>标题2<span class="small">副标题</span></h2>
    <h3>标题3</h3>
</body>

BootStrap基本使用

段落

  1. 该段落和html的段落都是用p标签表示,只不过可以用lead类在为段落增大字号,以及加粗文本,而且对行高和margin也做了一定的处理
  2. 在该段落中也可以用small类行内块或small标签来减小字号,也可以用html中的文本格式标签
<body>
<p>我是一段话,<b>字号被加粗</b></p>
<p class="lead">我是一段加lead类的话,<span class="small">字号减小</span></p>
</body>

强调

定义一套类名,通过以下颜色表示强调

<body>
<div class="text-muted">提示效果</div>
<div class="text-primary">主要效果</div>
<div class="text-success">成功效果</div>
<div class="text-info">信息效果</div>
<div class="text-warning">警告效果</div>
<div class="text-danger">危险效果</div>
</body>

BootStrap基本使用

对齐效果

前言:bootstrap定义4个类名来控制文本的对齐风格

<body>
<p class="text-left">我是左对齐</p>
<p class="text-right">我是右对齐</p>
<p class="text-center">我是居中对齐</p>
<p class="text-justify">我是两端对齐</p>
</body>

列表

去点列表

含义:前面没有符号的例表

<ul class="list-unstyled">
    <li>列表1</li>
    <li>列表2</li>
</ul>

内联列表

解释:把垂直列表换成水平列表,而且去掉项目符号,保持水平显示(制作水平导航时常用)其主要用list-inline类来表示。

<ul class="list-inline">
    <li>列表1</li>
    <li>列表2</li>
</ul>

BootStrap基本使用

定义列表

前言:可以使用dl-horizontal来制作水平定义列表,当标题宽度超过160px时会显示三个省略号

<dl class="dl-horizontal">
    <dt>html超文本标记语言,多出来的</dt>
    <dd>html为超文本标记语言,是一种标识性语言</dd>
    <dt>css为层叠样式表</dt>
    <dd>css为层叠样式表,为前端三剑客之一</dd>
</dl>

BootStrap基本使用

代码

<body>
    <!-- 只能显示单行代码 -->
    <code>this is a simple code</code><br>
    <code>this is a simple code</code>
    <!-- 快捷键 -->
    <p>使用<kbd>ctrl</kbd>+<kbd>s</kbd>保存内容</p>
    <!-- 多行代码 -->
    <!-- 代码会保留原本的格式包括空格与回车 -->
    <!-- 当长度超过指定值时可以用pre-scrollable类添加滚动条 -->
    <pre class="pre-scrollable">
    &lt;h1&gt;hello springboot&lt;/h1&gt;
    public class PeopleApplication {
        public static void main(String[] args) {
            SpringApplication.run(PeopleApplication.class, args);
        }
    }
    </pre>
</body>

BootStrap基本使用

表格

前言:bootstrap为表格提供了一种基础样式和4种附加样式以及一个支持响应式的表格,在使用bootstrap表格的过程中,只需要添加对应的类名就可以得到不同的表格风格

基础样式

附加样式

注意:尽量在基础表格的情况下附加样式使用

<body>
    <table class="table table-bordered">
        <tr>
            <td>11</td>
            <td>12</td>
        </tr>
        <tr>
            <td>21</td>
            <td>22</td>
        </tr>
    </table>
</body>

表单标签

文本框和文本域 

表单标签用到的类

改变文本框大小

<body>
    <div class="row">
        <!-- 文本框 -->
        <div class="col-md-3">
            <input type="text" class="form-control"/>
        </div>
        <!-- 下拉框 -->
        <div class="col-md-3">
            <select class="form-control" multiple="multiple">
                <option>北京</option>
                <option>上海</option>
            </select>
        </div>
        <!-- 文本域 -->
        <div class="col-md-3">
            <textarea class="form-control"></textarea>
        </div>
    </div>
</body>

单选框和复选框

复选框

    <!-- 复选框 -->
    <div class="row">
        <!-- 垂直显示:通过div的class="checkbox"实现 -->
        <div class="col-md-3">
            <div class="checkbox">
                <label><input type="checkbox" name="hobby"/>唱歌</label>
            </div>
            <div class="checkbox">
                <label><input type="checkbox" name="hobby"/>跳舞</label>
            </div>
        </div>
        <!-- 水平显示:通过label标签的class="checkbox-inline"实现 -->
        <div class="col-md-3">
            <label class="checkbox-inline">
                <input type="checkbox" name="hobby"/>唱歌
            </label>
            <label class="checkbox-inline">
                <input type="checkbox" name="hobby"/>跳舞
            </label>
        </div>
    </div>

单选框

    <!-- 单选框 -->
    <div class="row">
        <!-- 垂直显示:通过div的class="radio"实现 -->
        <div class="col-md-3">
            <div class="radio">
                <label><input type="radio" name="sex"/>男</label>
            </div>
            <div class="radio">
                <label><input type="radio" name="sex"/>女</label>
            </div>
        </div>
        <!-- 水平显示:通过label标签的class="radio-inline"实现 -->
        <div class="col-md-3">
            <label class="radio-inline">
                <input type="radio" name="sex"/>男
            </label>
            <label class="radio-inline">
                <input type="radio" name="sex"/>女
            </label>
        </div>
    </div>

按钮

前言:使用具体的类代表特定样式的按钮(不仅可以使用在button标签里,也可以使用在其他标签里)

基础样式:btn

<button class="btn">按钮</button>
<a href="https://www.baidu.com" class="btn btn-primary">链接</a>

附加样式:btn-primary、btn-info、btn-success、btn-warning、btn-danger、btn-link、btn-default

<body>
    <button class="btn">普通按钮</button>
    <button class="btn btn-primary">primary按钮</button>
    <button class="btn btn-danger">danger按钮</button>
    <button class="btn btn-success">success按钮</button>
    <button class="btn btn-warning">warning按钮</button>
    <button class="btn btn-info">info按钮</button>
    <button class="btn btn-default">default按钮</button>
    <button class="btn btn-link">link按钮</button>
</body>

BootStrap基本使用

设置按钮大小

<body>
    <button class="btn">按钮1</button>
    <button class="btn btn-lg">按钮2</button>
    <button class="btn btn-sm">按钮3</button>
    <button class="btn btn-xs">按钮4</button>
</body>

BootStrap基本使用

设置按钮禁用

<body>
    <button class="btn">按钮</button>
    <!-- 点击事件失败 -->
    <button class="btn" disabled onclick="alert('hello')">按钮1</button>
    <!-- 点击事件成功 -->
    <button class="btn disabled" onclick="alert('hello')">按钮2</button>
</body>

表单布局

前言

基本表单结构都是Bootstrap自带的,个别表单控件会自动接收一些全局样式,下面列出创建基本表单的步骤

  1. 向父<form>元素添加role=“form”属性
  2. 把标签和控件放在一个带有类名form-group的div块中(里面配合网格系统使用,放列)
  3. 向所有的文本元素input、textarea、select添加class=“form-control”

水平表单

表单类名为form-horizontal(配合网格系统使用)

    <!-- 水平表单 -->
    <form action="#" class="form-horizontal" role=“form”>
        <!-- 表单中的表单元素 -->
        <div class="form-group">
            <!-- label的样式 -->
            <label for="uname" class="control-label col-md-2">姓名</label>
            <div class="col-md-8">
                <input type="text" id="uname" class="form-control" placeholder="请输入您的姓名"/>
            </div>
        </div>
        <div class="form-group">
            <!-- label的样式 -->
            <label for="upwd" class="control-label col-md-2">密码</label>
            <div class="col-md-8">
                <input type="text" id="upwd" class="form-control" placeholder="请输入您的密码"/>
            </div>
        </div>
        <div class="form-group">
            <div class="col-md-2 col-md-offset-5">
                <button class="btn btn-primary">提交</button>
            </div>
        </div>
    </form>

BootStrap基本使用

内联表单

理解:将表单控件都放到一行显示,用到的表单类名为form-inline

    <form action="#" class="form-inline" role="form">
        <div class="form-group">
            <label for="username">姓名</label>
            <input type="text" id="username" class="form-control" placeholder="请输入您的姓名"/>
        </div>
        <div class="form-group">
            <label for="password">密码</label>
            <input type="text" id="password" class="form-control" placeholder="请输入您的密码"/>
        </div>
        <div class="form-group">
            <button class="btn btn-default">提交</button>
        </div>
    </form>

BootStrap基本使用

注意:这里不用设置格子,因为它所有元素都在一行,设置格子也没意义 

缩略图

前言:在bootstrap中类名为thumbnail的块将被解析为缩略图

注意:缩略图的实现是配合网格系统一起使用,同时还可以让缩略图配合标题、描述内容按钮等

    <div class="container">
        <div class="row">
            <div class="col-md-3">
                <!-- 缩略图 -->
                <div class="thumbnail">
                    <img src="./static/1.jpg" style="width:240px;height:360px;">
                    <h3>高圆圆</h3>
                    <p>出生于北京,中国内地影视女演员,模特。</p>
                    <button class="btn btn-default">
                        <!-- 图标组件 -->
                        <span class="glyphicon glyphicon-heart"></span>喜欢
                    </button>
                    <button class="btn btn-info">
                        <span class="glyphicon glyphicon-pencil"></span>评论
                    </button>
                </div>
            </div>
        </div>
    </div>

面板

前言:使用具体的类名代表特定样式的面板

基础样式:panel

附加样式(面板颜色)

注意:面板由面板头和面板体以及面板尾部构成

    <div class="panel panel-warning">
        <!-- 面板头 -->
        <div class="panel-heading">
        离骚
        </div>
        <!-- 面板体 -->
        <div class="panel-body">
        路漫漫其修远兮,吾将上下而求索。
        </div>
        <!-- 面板尾部 -->
        <div class="panel-footer">
        作者:屈原
        </div>
    </div>

BootStrap基本使用

bootstrap插件

导航插件

前言:根据导航块的类名不同可以显示多种导航栏(通常与列表一起使用)

基础样式:nav

导航栏的分类(加在ul内)

导航栏中的导航状态(加在li内)

标签式导航 

    <p>标签式的导航菜单</p>
    <ul class="nav nav-tabs">
        <li><a href="#">Home</a></li>
        <!-- 默认选中 -->
        <li class="active"><a href="#">Java</a></li>
        <!-- 禁用导航 -->
        <li class="disabled"><a href="#">PHP</a></li>
    </ul>

BootStrap基本使用

胶囊型导航 

    <p>基本的胶囊式导航菜单</p>
    <ul class="nav nav-pills">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="#">Java</a></li>
        <li><a href="#">PHP</a></li>
    </ul>

BootStrap基本使用

垂直型导航 

    <p>垂直的胶囊式导航菜单</p>
    <ul class="nav nav-pills nav-stacked">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="#">Java</a></li>
        <li><a href="#">PHP</a></li>
    </ul>

BootStrap基本使用

两端对齐导航 

    <p>两端对齐的导航元素</p>
    <ul class="nav nav-tabs nav-justified">
        <li class="active"><a href="#">Home</a></li>
        <li><a href="#">Java</a></li>
        <li><a href="#">PHP</a></li>
    </ul>

BootStrap基本使用

面包屑导航 

    <p>面包屑式的导航元素</p>
    <ul class="breadcrumb">
        <li><a href="#">Home</a></li>
        <li><a href="#">Java</a></li>
        <li class="active"><a href="#">PHP</a></li>
    </ul>

BootStrap基本使用

分页导航

页码导航基本样式:ul标签上加pagination类 

页码导航附加样式

翻页导航:ul标签上添加pager类

页码导航

    <ul class="pagination pagination-lg">
        <!-- 左双箭头 -->
        <li><a href="#">&laquo;</a></li>
        <li><a href="#">1</a></li>
        <li><a href="#">2</a></li>
        <li class="active"><a href="#">3</a></li>
        <!-- 右双箭头 -->
        <li><a href="#">&raquo;</a></li>
    </ul>

BootStrap基本使用

翻页导航

    <ul class="pager">
        <li><a href="#">上一页</a></li>
        <li><a href="#">下一页</a></li>
    </ul>

BootStrap基本使用

下拉菜单

注意:

    <!-- 使用一个类名为dropdown或btn-group的div包裹整个下拉框(向下:dropdown;向上:dropup) -->
    <div class="dropdown">
        <!-- 使用button作为父菜单,使用类名:dropdown-toggle和自定义data-toggle属性 -->
        <button class="btn btn-default dropdown-toggle" data-toggle="dropdown">
            频道
            <!-- 设置下拉箭头(caret类) -->
            <span class="caret"></span>
        </button>
        <!-- 下拉菜单使用一个ul列表,并定义一个类名为dropdown-menu -->
        <ul class="dropdown-menu">
            <!-- 分组标题,添加类名dropdown-header -->
            <li class="dropdown-header">--科普--</li>
            <li class="active"><a href="#">人与自然</a></li>
            <li><a href="#">动物世界</a></li>
            <!-- 添加分割线,添加divider类 -->
            <li class="divider"></li>
            <li class="dropdown-header">--搞笑--</li>
            <li class="disabled"><a href="#">快乐大本营</a></li>
            <li><a href="#">生活大爆炸</a></li>
        </ul>
    </div>

BootStrap基本使用

模态框

理解:模态框是父窗体上的子窗体,通常,目的是显示一个单独的源的内容,可以在不离开父窗体的情况下有一些互动,子窗体可以提供信息、交互等

模态框的使用

$('#identifier').modal(options)

注意:options为特定的函数;(展示模态框的函数:show、隐藏模态框函数:hide)

通过data属性使用模态框

    <h2>创建模态框(Modal)</h2>
    <!-- 按钮触发模态框 -->
    <!-- data-toggle="modal"用于打开模态框窗口 -->
    <button class="btn btn-primary btn-lg" data-toggle="modal" data-target="#myModal">开始演示模态框</button>
    <!-- 模态框(Modal) -->
    <!-- aria-labelledby="myModalLabel",该属性引用模态框的标题。 -->
    <!-- 属性 aria-hidden="true" 用于保持模态窗口不可见,直到触发器被触发为止(比如点击在相关的按钮上)。 -->
    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <!-- 定义模态框的头部 -->
                <div class="modal-header">
                    <!-- class="close"属性用于为模态框关闭窗口设置样式 -->
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                    <!-- 模态框的标题 -->
                    <h4 class="modal-title" id="myModalLabel">模态框标题</h4>
                </div>
                <!-- 定义模态框的体部 -->
                <div class="modal-body">在这里添加一些文本</div>
                <!-- 定义模态框的尾部 -->
                <div class="modal-footer">
                    <!-- data-dismiss="modal"用于关闭模态框窗口的属性 -->
                    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
                    <button type="button" class="btn btn-primary">提交更改</button>
                </div>
            </div>
        </div>
    </div>

BootStrap基本使用

通过js使用模态框 

<body>
    <link rel="stylesheet" href="./lib/bootstrap.min.css">
    <script src="./lib/jquery.js"></script>
    <script src="./lib/bootstrap.min.js"></script>
    <!-- 打开模态框 -->
    <div class="btn btn-primary" id="btn">打开模态框</div>
    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
                    <h4 class="modal-title" id="myModalLabel">模态框标题</h4>
                </div>
                <div class="modal-body">在这里添加一些文本</div>
                <div class="modal-footer">
                    <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
                    <button type="button" class="btn btn-primary" id="submitBtn">提交更改</button>
                </div>
            </div>
        </div>
    </div>
</body>
<script>
    /* 模态框的显示 */
    $('#btn').on('click',function(){
        $("#myModal").modal("show")
    })
    /* 模态框的隐藏 */
    submitBtn.onclick=()=>{
        $("#myModal").modal("hide")
    }
</script>

总结: