前端框架Bootstrap

一:前端框架Bootstrap

1.BOOtstrap框架介绍
1.该框架已经帮你写好了很多页面样式,你如果需要使用,只需要下载它对应文件,之后直接cv拷贝即可
在使用Bootstrap的时候所有的页面样式都只需要你通过class来调节即可

2.使用框架调整页面样式一般都是操作标签的class属性即可
bootstrap需要依赖于jQuery才能正常执行(动态效果)

image

2.下载Bootstrap链接

下载链接:https://www.cnblogs.com/goOJBK/p/15902864.html

二:响应式布局

1.什么是响应式布局?
响应式布局,根据浏览器窗口的大小来自动调整个个标签,所占的比例 如:
pc端与手机端!

扩展:
Google支持同时开发pc端与手机端页面
左下角

image

三:实战初体验(C V大法 轮播图)

1.需求将网页下面的轮播图Ctrl+V,复制到自己的HTML文档中使用。

image

2.打开检查,左标头选择轮播图,确定所在div标签,右键点击,选择Copy,选择Copy HTML代码,复制到Pycharm中HTML文件。

image

3.复制到HTML文件

image

4.成功

image

四:CV大法(博客)

1.选择你中意的博客,帖子,进行Copy。
image

2.选择HTML源码编辑器

image

五:布局容器

1.什么是布局容器?
布局容器就是左右两侧留白,只在中间使用bootstrap显示页面,在视觉上会显得更加美观,简洁,给用户一种清晰,简洁美的感觉,包括现在主流大型网站页面都在使用,布局容器。

container			:左右留白
container-fluid  	 :左右不留白

image

2.左右两侧有留白
<div class="container c1">  // 类用于固定宽度并支持响应式布局的容器。
    			// 在左右两边留白 div网页内写内容
</div>

image

3.左右两侧没有留白
<div class="container-fluid">  // 类用于100%宽度,占据全部视口(viewport)的器。
    
</div>

image

4.总结:
后续在使用bootstrap做页面的时候 上来先写一个div class=container,之后在div内部书写页面

六:栅格系统

1.什么是栅格系统?
Bootstrap 提供了一套响应式、移动设备优先的流式栅格系统,随着屏幕或视口(viewport)尺寸的增加,系统会自动分为最多12列。它包含了易于使用的预定义类,还有强大的mixin 用于生成更具语义的布局。
2.简介:
row作用:
1.“行(row)”必须包含在 .container (固定宽度)或 .container-fluid (100% 宽度)中,以便为其赋予合适的排列(aligment)和内补(padding)。
2.一个row就是一行,这一行会均分成12份。
最小1份 最多12份

3.占份
row			行  	: 一个row就是一行 一行是固定的12份
col-md-1	占几份
col-sm-1	占几份
col-xs-1	占几份
col-lg-1	占几份
4.写一个row就是将所在的区域划分成12份
<div class="row"></div>
5.在使用bootstrap的时候 脑子里面一定要做12的加减法
<div class="col-md-6 ">  // 获取你所要的份数
6.栅格系统应用
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <!--bootstrap引入 CSS CDN-->
    <link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css" rel="stylesheet">
    <!--jQuery引入 CDN-->
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <!--Bootstrap引入 Js CDN-->
    <script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js"></script>
    <style>
        .c1 {
            background-color: red;
            height: 100px;
            border: 5px solid black;
        }
    </style>
</head>
<body>
    <!--左右留白-->
<div class="container">
    <div class="row">
        <div class="col-md-6 c1">
        <!--使用row 在6份里面 在均分12份-->
            <div class="row">
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
                <div class="col-md-1 c1"></div>
            </div>
        </div>
        <div class="col-md-6 c1"></div>
        <br>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <div class="col-md-1 c1"></div>
        <br>
        <div class="col-md-3 c1"></div>
        <div class="col-md-9 c1"></div>
        <br>
        <div class="col-md-2 c1"></div>
        <div class="col-md-8 c1"></div>
        <div class="col-md-2 c1"></div>
        <br>
        <div class="col-md-8 c1"></div>
    </div>
</div>
</body>

image

七:响应式布局

1.响应式布局
目前页面只是能左右布局,但是,当我们切换到手机显示器,或其他屏幕时,会出现页面整体样式变形,打乱了,所以目前该页面没有加入响应式布局。

image

2.实时监测浏览器屏幕大小
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/html">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <!--bootstrap引入 CSS CDN-->
    <link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.4.1/css/bootstrap.min.css" rel="stylesheet">
    <!--jQuery引入 CDN-->
    <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <!--Bootstrap引入 Js CDN-->
    <script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.4.1/js/bootstrap.min.js"></script>
    <style>
        .c1 {
            background-color: red;
            height: 100px;
            border: 5px solid black;
        }
        /*检查浏览器屏幕的大小 一旦浏览器窗口小于600px 就执行代码变成变成绿色*/
        @media screen and (max-width: 600px) {
            .c1 {
                background-color: greenyellow;
                height: 100px;
                border: 5px solid black;
            }
            }
    </style>
</head>
<body>
<div class="container">
    <div class="row">
        <div class="col-md-6 c1"></div>
        <div class="col-md-6 c1"></div>
        <br>
        <div class="col-md-2 c1"></div>
        <div class="col-md-2 c1"></div>
        <div class="col-md-2 c1"></div>
        <div class="col-md-2 c1"></div>
        <div class="col-md-2 c1"></div>
        <div class="col-md-2 c1"></div>
        <br>
        <div class="col-md-6 c1"></div>
        <div class="col-md-6 c1"></div>
        <br>
        <div class="col-md-6 c1"></div>
        <div class="col-md-6 c1"></div>
        <br>
        <div class="col-md-8 c1"></div>
    </div>
</div>
</body>
</html>
3.实验结果
实时检查浏览器屏幕大小变化,一旦浏览器窗口小于600px,就执行以下代码
将页面变成绿色。

附加:
	后期可以进行相应更改,按照需求,但目前还有更好的解决方法,以下内容,解决屏幕兼容性问题。

image

所以我们要解决pc端到手机端页面布局的比例不能打乱。
4.解决方法:

​ 便世道bootstrap中的栅格参数(响应式布局)

八:栅格参数(响应式布局)

1.响应式布局
针对不同的显示器 bootstrap会自动选择对应的参数
如果你想要兼容所有的显示器,你就将四个类全部加上即可
会自动做响应式布局,解决显示器的兼容性。


.col-xs-    .col-sm-    .col-md-    .col-lg-
超小屏幕 手机 (<768px) 小屏幕 平板 (≥768px) 中等屏幕 桌面显示器 (≥992px) 大屏幕 大桌面显示器 (≥1200px)
栅格系统行为 总是水平排列 开始是堆叠在一起的,当大于这些阈值时将变为水平排列C
.container 最大宽度 None (自动) 750px 970px 1170px
类前缀 .col-xs- .col-sm- .col-md- .col-lg-
列(column)数 12
最大列(column)宽 自动 ~62px ~81px ~97px
槽(gutter)宽 30px (每列左右均有 15px)
可嵌套
偏移(Offsets)
列排序
将以上四个类都添加上,响应式布局,该页面就可以兼容所有的显示器,都是正常显示。
2.响应式布局(使用格栅参数)
    <style>
        .c1 {
            background-color: red;
            height: 100px;
            border: 5px solid black;
            }
    </style>
</head>
<body>
<div class="container">
    <div class="row">
        <div class="col-md-6 c1 col-xs-6 col-sm-6 col-lg-6"></div>
        <div class="col-md-6 c1 col-xs-6 .col-sm-6 col-lg-6"></div>
        <br>
        <div class="col-md-2 c1 col-xs-2 col-sm-2 col-lg-2"></div>
        <div class="col-md-2 c1 col-xs-2 .col-sm-2 col-lg-2"></div>
        <div class="col-md-2 c1 col-xs-2 col-sm-2 col-lg-2"></div>
        <div class="col-md-2 c1 col-xs-2 col-sm-2 col-lg-2"></div>
        <div class="col-md-2 c1 col-xs-2 col-sm-2 col-lg-2"></div>
        <div class="col-md-2 c1 col-xs-2 .col-sm-2 col-lg-2"></div>
        <br>
        <div class="col-md-6 c1 col-xs-6 col-sm-6 col-lg-6"></div>
        <div class="col-md-6 c1 col-xs-6 col-sm-6 col-lg-6"></div>
        <br>
        <div class="col-md-6 c1 col-xs-6 col-sm-6 col-lg-6"></div>
        <div class="col-md-6 c1 col-xs-6 col-sm-6 col-lg-6"></div>
        <br>
        <div class="col-md-8 c1 col-xs-8 col-sm-8 col-lg-8"></div>
    </div>
</div>
</body>

image

3.实现row只有8份居中展示
在一行如何移动位置
参数(类):
    col-md-offset-
4.8份左右居中展示
解析:
    默认是从左往右移动的 12-8 = 4  8%4 = 2 所有可以实现8份左右居中
    所有就是掌握12以内的 加减乘除 即可,按情况进行处理。

image

九:实战样式

<body>
    
<!--标签h1-h6    small 副标签-->
<h1>我知道你 在我世界最重要! <small>你记得我的最好</small> </h1>

<!--lead让段落突出   text-center  剧中展示-->
<p class="lead text-center">你懂你 再见!</p>

<!--缩略语 当鼠标悬停在缩写和缩写词上时就会显示完整内容-->
<abbr title="详细的解释内容(可编写)">小朋友 你是否有问号?</abbr>

<!--多种引用样式-->
<blockquote>
  <p>在这个世界上 我在此遥望诗和远方!</p>
  <footer>Someone famous in <cite title="Source Title">Source Title</cite></footer>
</blockquote>
    
</body>

image

十:表单


1.针对表单标签 加样式就用form-control
	class="form-control"
	
2.checkbox和radio我们一般不会给它加form-control,直接使用原生的即可
<input type="checkbox">222
<input type="radio">333

3.针对报错信息 可以加has-error(input的父标签加)
<p class="has-error">
	username:
  <input type="text" class="form-control">
</p>
<div class="container">
    <div class="col-md-8 col-md-offset-2">
        <h2 class="text-center">登录页面</h2>
        <form action=""> 
  <!--has-error 针对报错信息,form表单 input增加 全局样式 占据当前区域最大值-->
            <p class="has-error">username: <input type="text" class="form-control"></p>
            <p>password: <input type="text" class="form-control"></p>
            <p>偶像:
                <select name="" id="" class="form-control">
                <option value="">苍某空</option>
                <option value="">三某悠亚</option>
                <option value="">小某幼</option>
                </select>
            </p>
            <p>hobby:
                <input type="checkbox">快餐
                <input type="checkbox">西餐
                <input type="radio">游泳
            </p>
            <p>textarea:
                <textarea name="" id="" cols="30" rows="10" class="form-control"></textarea>
            </p>
            <input type="submit" class="btn btn-primary">
        </form>
    </div>
</div>

image

十:按钮

1.可作为按钮使用的标签或元素
为 `<a>`、`<button>` 或 `<input>` 元素添加按钮类(button class)即可使用 Bootstrap 提供的样式。
2.a标签与button
a标签添加按钮属性
<a href="https://www.mzitu.com/" class="btn btn-primary">点我</a>

button按钮
<button class="btn btn-danger">按我</button>     // 红色
<button class="btn btn-default">按我</button>   // 白色
<button class="btn btn-success">按我</button>   // 绿色
<button class="btn btn-info">按我</button>  	 // 蓝色
<button class="btn btn-warning">按我</button>  // 黄色 

注意:
	按钮组只有六种颜色
3.预定义样式
使用下面列出的类可以快速创建一个带有预定义样式的按钮。

image

针对组件的注意事项
虽然按钮类可以应用到 <a> 和 <button> 元素上,但是,导航和导航条组件只支持 <button> 元素。

链接被作为按钮使用时的注意事项
如果 <a> 元素被作为按钮使用 -- 并用于在当前页面触发某些功能 -- 而不是用于链接其他页面或链接当前页面中的其他部分,那么,务必为其设置 role="button" 属性。

跨浏览器展现
我们总结的最佳实践是:强烈建议尽可能使用 <button> 元素来获得在各个浏览器上获得相匹配的绘制效果。

另外,我们还发现了 Firefox <30 版本的浏览器上出现的一个 bug,其表现是:阻止我们为基于 <input> 元素所创建的按钮设置 line-height 属性,这就导致在 Firefox 浏览器上不能完全和其他按钮保持一致的高度。
4.尺寸
需要让按钮具有不同尺寸吗?使用 .btn-lg、.btn-sm 或 .btn-xs 就可以获得不同尺寸的按钮。
<button class="btn btn-warning btn-lg">按我</button>  // 大按钮
<button class="btn btn-warning btn-sm">按我</button>  // 小按钮
<button class="btn btn-warning btn-xs">按我</button>  // 超小尺寸

<input type="submit" class="btn btn-primary btn-block">  

通过给按钮添加 .btn-block 类可以将其拉伸至父元素100%的宽度,而且按钮也变为了块级(block)元素。

image

十一:Bootstrap组件

网址:https://v3.bootcss.com/components/#glyphicons-how-to-use
image

1.如何使用图标

出于性能的考虑,所有图标都需要一个基类和对应每个图标的类。把下面的代码放在任何地方都可以正常使用。注意,为了设置正确的内补(padding),务必在图标和文本之间添加一个空格。

2.图表
使用图标,将图标类复制粘贴到指定标签内位置,填写类。

<h2 class="text-center">登陆页面 <span class="glyphicon glyphicon-user"></span></h2>

image

注意:
    图标类不能和其它组件直接联合使用。它们不能在同一个元素上与其他类共同存在。应该创建一个嵌套的 <span> 标签,并将图标类应用到这个 <span> 标签上。
3.给图标添加颜色
<style>
        span {
            color: red;
        }
    </style>

image

十二:导航条

1.导航条颜色
默认为白色导航条
<nav class="navbar navbar-default">
更换为黑色导航条
<nav class="navbar navbar-inverse">

image

2.更换为黑色

image

3.导航条添加到底部
<nav class="navbar navbar-inverse navbar-fixed-bottom">

image

十三:巨幕与整合

<div class="jumbotron">
  <h1>Hello, world!</h1>
  <p>...</p>
  <p><a class="btn btn-primary btn-lg" href="#" role="button">Learn more</a></p>
</div>

image

posted @ 2022-02-17 00:04  AlexEvans  阅读(156)  评论(0编辑  收藏  举报