BootStrap基础知识总结

文章目录

      • 目标
        • 掌握什么是响应式及响应式的原理
        • 掌握BootStrap的栅格系统
        • 了解BootStrap的其他组件及JS控件
      • 表单校验案例
        • 技术分析
        • 步骤分析
        • 代码实现
      • 使用JQuery发送请求局部刷新页面
      • 使用BootStrap开发一个响应式的页面出来
        • 需求分析
        • 技术分析
          • BootStap概述
          • BootStrap的入门开发
        • 使用BootStrap布局网站首页
        • 需求分析
        • 技术分析
        • 步骤分析
        • 代码实现
      • 前端内容总结

目标

掌握什么是响应式及响应式的原理

掌握BootStrap的栅格系统

了解BootStrap的其他组件及JS控件

表单校验案例

技术分析

  • trigger : 触发事件,但是会执行类似浏览将光标移到输入框内的这种浏览器默认行为
  • triggerHandler : 仅仅只会触发事件所对应的函数
  • is()

步骤分析

  1. 首先给必填项,添加尾部添加一个小红点
  2. 获取用户输入的信息,做相应的校验
  3. 事件: 获得焦点, 失去焦点, 按键抬起
  4. 表单提交的事件

代码实现


<html>
	<head>
		<meta charset="UTF-8">
		<link rel="stylesheet" href="../css/style.css" />
		<title>title>
		
		<script type="text/javascript" src="../js/jquery-1.11.0.js" >script>
		<script>
			
			$(function(){  //默认做一些页面初始化
				//动态在必填项后面添加小红点
				$(".bitian").after("*");
				
				//给必填项绑定事件
				$(".bitian").blur(function(){
					//首先获取用户当前输入的值
					var value = this.value; //123
					//清空上一次提示的信息
					$(this).parent().find(".formtips").remove();
					
					//判断当前的值是哪一项输入的值
					if($(this).is("#username")){  //判断是否是用户名输入项
						if(value.length < 6){
							$(this).parent().append("用户名太短了");
						}else{
							$(this).parent().append("用户名够用");
						}
					}
					
					if($(this).is("#password")){  //判断是否是密码输入项
						if(value.length < 6){
							$(this).parent().append(",密码太短了");
						}else{
							$(this).parent().append("密码够用");
						}
					}
				}).focus(function(){
					$(this).triggerHandler("blur");
				}).keyup(function(){
					$(this).triggerHandler("blur");
				})
				
				
				
				//给表单提交绑定事件
				$("form").submit(function(){
					//触发所有必填项的校验
					$(".bitian").trigger("focus");
					//找到错误信息的个数
					if($(".onError").length > 0){
						return false;
					}
					return true;
				});
			});
			
			
			
			
			
			
			
		/*	
			$(function(){
				// 在所有必填项后天加一个小红点 *
				$(".bitian").after("*");
				
				//事件绑定
				$(".bitian").blur(function(){
//					var value = this.value;
					var value = $(this).val();
					//清空当前必填项后面的span 
//					$(".formtips").remove();
					$(this).parent().find(".formtips").remove();
					//获得当前事件是谁的
					if($(this).is("#username")){
						//校验用户名
						if(value.length < 6){
							$(this).parent().append("用户名太短了");
						}else{
							$(this).parent().append("用户名够用");
						}
					}
					
					if($(this).is("#password")){
						//校验密码
						if(value.length < 3){
							$(this).parent().append("密码太短了");
						}else{
							$(this).parent().append("密码够用");
						}
					}
				}).focus(function(){
					$(this).triggerHandler("blur");
				}).keyup(function(){
					$(this).triggerHandler("blur");
				});
				
//				$(".bitian").blur(function(){}).focus(function(){}).keyup(function(){})

				//给表单绑定提交事件
				$("form").submit(function(){
					//触发必填项的校验逻辑
					$(".bitian").trigger("focus");
					
					var length = $(".onError").length
					if(length > 0){
						return false;
					}
					return true;
				});
			});*/
			
		script>
	head>
	<body>
		<form action="../index.html">
			<div>
				用户名:<input type="text" class="bitian" id="username" />
			div>
			<div>
				密码:<input type="password"  class="bitian" id="password" />
			div>
			<div>
				手机号:<input type="tel" />
			div>
			<div>
				<input type="submit" />
			div>
		form>
	body>
html>


使用JQuery发送请求局部刷新页面

​ 数据交换格式:

​ json

​ xml

  • 什么是JSON

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。

  • JSON格式

    ​ JSON对象

    { key1:value}   
    {"username":"zhangsan","password":"123"}
    

    ​ JSON数组

    [{ key1:value},{ key1:value},{ key1:value}]
    

使用BootStrap开发一个响应式的页面出来

需求分析

开发一套响应式页面.让他能够在各种设备上显示正常,提升用户体验

技术分析

BootStap概述
  • 什么是BootStrap

  • BootStrap有什么作用

    • 提高开发人员的工作效率
  • 什么是响应式页面

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

  • BootStrap的中文网

    • http://www.bootcss.com
  • 下载BootStrap

  • BootStrap结构

    • 全局CSS
      • bootStrap中已经定义好了一套CSS的样式表
    • 组件
      • BootStrap定义的一套按钮,导航条等组件
    • JS插件
      • BootStrap定义了一套JS的插件,这些插件已经默认实现了很多种效果
BootStrap的入门开发
  • 引入相关的头文件
		
		<link rel="stylesheet" href="../css/bootstrap.css" />
		
		
		<script type="text/javascript" src="../js/jquery-1.11.0.js" >script>
		
		
		<script type="text/javascript" src="../js/bootstrap.js" >script>
		
		<meta name="viewport" content="width=device-width, initial-scale=1">
  • BootStrap的布局容器

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

...

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

...
  • row

    Bootstrap 栅格系统的工作原理:

    • “行(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

  • BootStrap的栅格系统

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

    • 定义了一套CSS
      • 对页面中的元素进行定义
      • 列表元素,表单,按钮,图片…

使用BootStrap布局网站首页

需求分析

请使用BootStrap对我们的首页进行优化

技术分析

步骤分析

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

代码实现


<html>

	<head>
		<meta charset="UTF-8">
		<title>title>
		
		<link rel="stylesheet" href="../css/bootstrap.min.css">

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

		
		<script src="../js/jquery-1.11.0.js">script>

		
		<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">
							
							<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 navigationspan>
						        <span class="icon-bar">span>
						        <span class="icon-bar">span>
						        <span class="icon-bar">span>
						      button>
								<a class="navbar-brand" href="#">首页a>
							div>

							
							<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 linka>
											li>
											<li class="divider">li>
											<li>
												<a href="#">One more separated linka>
											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>
							
						div>
						
					nav>
				div>
			div>

			<div>
				<div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
  
  <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>

  
  <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>

  
  <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">Previousspan>
  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">Nextspan>
  a>
div>

				
				
			div>
			
			
			<div class="row">
				<div class="col-md-12">
					<h3>最新商品<img src="../images/title2.jpg"/>h3>
				div>
			div>
			
			
			<div class="row">
				
				<div class="col-md-2 hidden-sm hidden-xs">
					<img src="../products/hao/big01.jpg" width="100%" height="100%" />
				div>
					
				<div class="col-md-10">
					
					<div class="row">
						
						<div class="col-md-6">
							<img src="../products/hao/middle01.jpg" width="100%" />
						div>
						
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
					div>
					
					<div class="row">
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
					div>
				div>
			div>
			
			<div class="row">
				<div class="col-md-12">
					<img src="../products/hao/ad.jpg" width="100%" />
				div>
			div>
			
			
			
			
			
			<div class="row">
				<div class="col-md-12">
					<h3>最新商品<img src="../images/title2.jpg"/>h3>
				div>
			div>
			
			
			<div class="row">
				
				<div class="col-md-2 hidden-sm hidden-xs">
					<img src="../products/hao/big01.jpg" width="100%" height="100%" />
				div>
					
				<div class="col-md-10">
					
					<div class="row">
						
						<div class="col-md-6">
							<img src="../products/hao/middle01.jpg" width="100%" />
						div>
						
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
					div>
					
					<div class="row">
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
						<div class="col-md-2 col-xs-4" style="text-align: center;">
							<img src="../products/hao/small01.jpg" />
							<p>豆浆机p>
							<p>$998p>
						div>
						
					div>
				div>
			div>
			
			
			
			<div>
				<img src="../image/footer.jpg" width="100%" />
			div>
			
			<div style="text-align: center;">
				<a href="http://www.itheima.com">关于我们a>	
					<a href="http://www.itheima.com">联系我们a>	
					<a href="http://www.itheima.com">招贤纳士a>	
					<a href="http://www.itheima.com">法律声明a>	
					<a href="http://www.itheima.com">友情链接a>	
					<a href="http://www.itheima.com">支付方式a>	
					<a href="http://www.itheima.com">配送方式a>	
					<a href="http://www.itheima.com">服务声明a>	
					<a href="http://www.itheima.com">广告声明a>	
					<br />
					Copyright © 2018 yxy 版权所有
			div>

		div>
	body>

html>

前端内容总结

  • 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

你可能感兴趣的:(学习笔记,Web前端,Java)