• 9.06_BootStrap


    一、BootStap概述

      1.1 什么是BootStrap

    ​    Bootstrap是美国Twitter公司的设计师Mark Otto和Jacob Thornton合作基于HTML、CSS、JavaScript 开发的简洁、直观、强悍的前端开发框架,使得 Web 开发更加快捷。Bootstrap提供了优雅的HTML和CSS规范,它即是由动态CSS语言Less写成。Bootstrap一经推出后颇受欢迎,一直是GitHub上的热门开源项目,包括NASA的MSNBC(微软全国广播公司)的Breaking News都使用了该项目。 国内一些移动开发者较为熟悉的框架,如WeX5前端开源框架等,也是基于Bootstrap源码进行性能优化而来。

      1.2 BootStrap有什么作用

        能够提高开发人员的工作效率

      1.3什么是响应式页面

        适应不同的分辨率显示不同样式,提高用户的体验

    二、BootStrap的入门开发

      2.1引入相关的头文件

        <!-- 最新版本的 Bootstrap 核心 CSS 文件 -->
        <link rel="stylesheet" href="../css/bootstrap.css" />

        <!--需要引入JQuery-->
        <script type="text/javascript" src="../js/jquery-1.11.0.js" ></script>

        <!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
        <script type="text/javascript" src="../js/bootstrap.js" ></script>

        <meta name="viewport" content="width=device-width, initial-scale=1">

      2.2BootStrap的布局容器

        .container` 类用于固定宽度并支持响应式布局的容器。

        <div class="container">
        </div>

        .container-fluid` 类用于 100% 宽度,占据全部视口(viewport)的容器。

        <div class="container-fluid">
          ...
        </div>

    三、 Bootstrap 栅格系统的工作原理

      3.1行(row)”必须包含在 `.container` (固定宽度)或 `.container-fluid` (100% 宽度)中,以便为其赋予合适的排列(aligment)和内补(padding)。
        通过“行(row)”在水平方向创建一组“列(column)”。
        你的内容应当放置于“列(column)”内,并且,只有“列(column)”可以作为行(row)”的直接子元素。
        类似 `.row` 和 `.col-xs-4` 这种预定义的类,可以用来快速创建栅格布局。Bootstrap 源码中定义的 mixin 也可以用来创建语义化的布局。
        通过为“列(column)”设置 `padding` 属性,从而创建列与列之间的间隔(gutter)。通过为 `.row` 元素设置负值 `margin` 从而抵消掉为 `.container` 元素设置的 `padding`,也就间接为“行(row)”所包含的“列(column)”抵消掉了`padding`

      3.2BootStrap的栅格系统

        响应式设计: 这种设计依赖于CSS3中的媒体查询
        栅格样式:
        设备分辨率大于1200 使用lg样式
        设备分辨率大于992 < 1200 使用md样式
        设备分辨率大于768 < 992 使用sm样式
        设备分辨率小于768使用xs样式

        BootStrap的全局CSS
        定义了一套CSS
        对页面中的元素进行定义
        列表元素,表单,按钮,图片...

    四、使用BootStrap布局网站首页

      4.1需求分析

        使用BootStrap对网站的首页进行优化

      4.2 步骤分析

        1. 新建一个HTML页面.引入bootStrap相关的js和CSS
        2. 定义一个整体的div, 将整体的div分成8个部分
         3. 完成没部分的内容显示

      4.3代码实现

        <!DOCTYPE html>
        <html>

        <head>
        <meta charset="UTF-8">
        <title></title>
        <!--
        准备工作:
        <meta name='viewport'>
          1.导入bootstrap css文件
          2.导入JQuery
          3.bootstrap.js

          4.写一个div class = container 支持响应式的布局容器

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

        <meta name="viewport" content="width=device-width, initial-scale=1">

        <!--

        jQuery文件。务必在bootstrap.min.js 之前引入
        -->
        <script src="../js/jquery-1.11.0.js"></script>

        <!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
        <script src="../js/bootstrap.min.js"></script>

        </head>

        <body>
          <div class="container">

          <div class="row">
          <div class="col-md-4">
          <img src="../img/logo2.png" />
          </div>
          <div class="col-md-4 hidden-xs">
          <img src="../img/header.png" />
          </div>
          <div class="col-md-4">
          <a href="#">登录</a>
          <a href="#">注册</a>
          <a href="#">购物车</a>
          </div>
          </div>

          <!--菜单-->
          <div class="row">
          <div class="col-md-12">
          <nav class="navbar navbar-inverse" role="navigation">
          <div class="container-fluid">
          <!-- Brand and toggle get grouped for better mobile display -->
          <div class="navbar-header">
          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
          <span class="sr-only">Toggle navigation</span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          <span class="icon-bar"></span>
          </button>
          <a class="navbar-brand" href="#">首页</a>
          </div>

          <!-- Collect the nav links, forms, and other content for toggling -->
          <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
          <ul class="nav navbar-nav">
          <li class="active">
          <a href="#">手机数码</a>
          </li>
          <li>
            <a href="#">鞋靴箱包</a>
          </li>
          <li>
            <a href="#">电脑办公</a>
          </li>
          <li class="dropdown">
            <a href="#" class="dropdown-toggle" data-toggle="dropdown">所有分类 <span class="caret"></span></a>
            <ul class="dropdown-menu" role="menu">
          <li>
            <a href="#">手机数码</a>
          </li>
          <li>
            <a href="#">鞋靴箱包</a>
          </li>
          <li>
            <a href="#">电脑办公</a>
          </li>
          <li class="divider"></li>
          <li>
            <a href="#">Separated link</a>
          </li>
            <li class="divider"></li>
          <li>
            <a href="#">One more separated link</a>
          </li>
          </ul>
          </li>
          </ul>
            <form class="navbar-form navbar-right" role="search">
            <div class="form-group">
            <input type="text" class="form-control" placeholder="请输入要搜索的商品">
            </div>
              <button type="submit" class="btn btn-default">搜索</button>
              </form>

              </div>
          <!-- /.navbar-collapse -->
          </div>
          <!-- /.container-fluid -->
          </nav>
          </div>
          </div>

          <div>
          <div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
          <!-- Indicators -->
          <ol class="carousel-indicators">
          <li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
          <li data-target="#carousel-example-generic" data-slide-to="1"></li>
          <li data-target="#carousel-example-generic" data-slide-to="2"></li>
          </ol>

          <!-- Wrapper for slides -->
          <div class="carousel-inner" role="listbox">
          <div class="item active">
          <img src="../img/1.jpg" alt="...">
          <div class="carousel-caption">
          </div>
          </div>
          <div class="item">
          <img src="../img/2.jpg" alt="...">
          <div class="carousel-caption">
            ...
          </div>
          </div>
          <div class="item">
          <img src="../img/3.jpg" alt="...">
          <div class="carousel-caption">
            ...
          </div>
          </div>

          </div>

          <!-- Controls -->
          <a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
          <span class="glyphicon glyphicon-chevron-left"></span>
          <span class="sr-only">Previous</span>
          </a>
          <a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
          <span class="glyphicon glyphicon-chevron-right"></span>
          <span class="sr-only">Next</span>
          </a>
        </div>



        </div>

    五、 前端内容总结

      - JQ方式校验表单
      - json 
      - json对象 {}
      - json数组 [{},{}]
      - $.get(url,function(data){}) (了解)
      - bootstrap: Bootstrap 是最受欢迎的 HTML、CSS 和 JS 框架,用于开发响应式布局、移动设备优先的 WEB 项目。
      - 全局CSS样式: css样式
      - 栅格系统:
      - 将屏幕划分成12个格子,12列
      - class='row' 当前是行
      - 行里面放的是列 col-屏幕分辨率-数字 (每一种分辨率后的数字总和必须是等于12,如果超过12,另起一行)
      - col-lg-数字: 在超宽屏幕上使用
      - col-md-数字: 在中等屏幕上,PC电脑
      - col-sm-数字: 在平板电脑上
      - col-xs-数字: 在手机上
      - 组件: 导航条 , 进度条, 字体
      - javascript插件 : 轮播图
      - 复制粘贴
      - 什么是响应式: 会根据不同的分辨率去显示不同页面结构,提高用户体验

      - HTML: 超文本标记语言: 设计网页,决定了网页的结构

      - CSS: 层叠样式表 ,主要是用来美化页面, 将美化和HTML代码进行分离,提高代码复用性

      - javascript: 脚本语言,由浏览器解释执行, 弱类型语言(var i), 提供用户交互

      - jquery: javascript函数库,进一步的封装

      - 选择器:

      - ID选择器
      - 类选择器
      - 元素选择器
      - 通配符选择器
      - 选择器分组

      - 层级选择器

      - 后代选择器
      - 子元素选择器
      - 相邻兄弟选择器
      - 兄弟选择器 : 找出所有的弟弟

      - 属性选择器:

      - 选择器[属性名称='属性的值']

      - 表单选择器

        - :input
        - :text
        - :password

        body > div > div:nth-child(7) > div:nth-child(3) > div:nth-child(8)

        - 基本的过滤器

        - :first
        - :last
        - :even
        - :odd
        - :gt
        - :lt
        - :eq

      - 表单对象属性

        - :selected
        - :checked

  • 相关阅读:
    「小程序JAVA实战」java-sesion的状态会话与无状态会话(38)
    「小程序JAVA实战」小程序 loading 提示框与页面跳转(37)
    「小程序JAVA实战」小程序登录与后端联调(36)
    phpexcel中文教程-设置表格字体颜色背景样式、数据格式、对齐方式、添加图片、批注、文字块、合并拆分单元格、单元格密码保护
    基于Bootstrap简单实用的tags标签插件
    html 中几次方,平方米,立方米,下标,上标,删除线等的表示方法
    如何做好App的引导页?(转)
    个推+DCLOUD,推送消息和透传消息
    AXURE在原型设计中的应用
    ***敏捷软件测试--初见
  • 原文地址:https://www.cnblogs.com/zyyzy/p/12505936.html
Copyright © 2020-2023  润新知