达内2016前端开发知识点总结--bootStrap--4天

bootStrap day01

 

第三阶段课程

(1)AJAX:数据库、服务器、HTTP、原生AJAX、jQuery-AJAX

(2)HTML5新特性

(3)Bootstrap

 

 

Bootstrap学习特点:

(1)理解难度低,甚至低于CSS

(2)难在1000+class/4天 = 250单词/天 —— 单词记忆!

 

 

今日目标:

(1)如何编写响应式网页 —— 重点

(2)Bootstrap入门 —— 重点

 

 

1.什么是响应式网页?

  1G:模拟信号,手机只能打电话

  2G:数字信号,手机可以发短信

  2.5G:GPRS,手机可以浏览网页,WAP/WML

  3G:智能手机,iOS/Android——Linux操作系统,具备真正的浏览器,可以浏览HTML网页

  早期的HTML网页都是为PC浏览器准备的,宽度设定都很大,手机屏幕,浏览体验不佳!

  2010年5月提出的“Responsive Web Page”,响应式网页、自适应式网页,一个页面,可以根据浏览设备的不同、或使用环境的不同,自动的修改布局、图片尺寸、文字大小,从而可以保证所有的设备下都正常的浏览体验。

  好处:各种设备下都正常浏览

  不足:页面代码结构需要考虑到多种设备,编写难度更大,一般只适用于内容量不太多的页面。

 

 

2.如何测试响应式网页?

(1)使用真实物理设备测试——测试效果最好但最麻烦

(2)使用第三方模拟器软件测试——测试效果有待进一步验证

(3)使用浏览器提供的设备模拟器测试——最简单但有时测试效果与真实物理设备有所不同,需要进一步验证

 

 

行业小知识:Viewport,视口,屏幕中浏览网页的窗口

早期的手机浏览PC网页时只能把页面进行缩小,影响浏览体验:

 

iOS系统提出了viewport的概念——承载网页的窗口,可以随意指定宽和高,但不能小于手机物理屏幕,可以让任意大小的网页不经缩放,直接显示:

 

Android后来也引入了该概念 —— 只有移动浏览器才有该概念

 

3.面试题:如何编写响应式网页? —— 整个阶段的最重点!!

  (1)必须声明viewport元标签

    <meta name="viewport" content="width=device-width,initial-scale=1.0,user-scalable=no">

  (2)容器尽量使用相对尺寸

尽量避免绝对尺寸:  div.container {  width: 500px;  }

使用相对尺寸代替:  div.container {  width: 80%;  }

  (3)文字大小尽量使用相对尺寸

尽量避免绝对尺寸:  .text { font-size: 12px; }

使用相对尺寸代替:  .text { font-size: 0.8rem; }

  (4)图片尽量使用相对尺寸

尽量避免绝对尺寸:  img { width: 200px; }

使用相对尺寸代替:  img { width: 50%; }  指定在父容器中的宽度占比,可以随着父容器无限变大

 img { max-width: 50%; } 指定在父容器中的宽度占比,同时还不能超过自己的原始大小

  (5)页面布局尽量采用流式布局(Fluid)

float:left;   或  display:inline-block;

  (6)响应式网页必须CSS3 Media Query技术!

 

 

4.CSS3 Media Query

  Media:指浏览网页的设备,如screen(phone/pc/pad)、tv、projection、print、tty、braille  

  Query:使用CSS自动查询出浏览设备的特性,如位深、解析度、宽高、水平/竖直方向....

  CSS3 Media Query:根据浏览网页的设备类型不同,或者特性不同,而有选择的执行某些CSS,放弃执行另外的。

  媒体查询具体有两种使用方法:

  (1)有选择性的执行符合条件的外部CSS文件

<link media="screen and (min-width:768px) and (max-width:991px)" rel="stylesheet" href="css/pad.css">

缺陷:即使不满足当前浏览器条件的CSS文件,也会被浏览器请求。

  (2)有选择性的执行CSS片段中的部分内容

@media screen and (min-width: 768px) and (max-width: 991px) {

   h3 {

     display:none

   }

}

 

重点练习:响应式网页示例:

  

主体布局:1:3:1     1:3:0  100%:100%:0

 

 

 

bootstrap:起步,引导程序,入口程序

 

5.Twitter Bootstrap概述

  官网:http://getbootstrap.com/

  中文网:http://www.bootcss.com/

  Bootstrap is the most popular HTML, CSS, and JS framework for developing responsive, mobile first projects on the web.

  内容分为五部分:

  (1)起步

  (2)全局CSS样式

  (3)组件

  (4)JS插件

  (5)定制

 

 

6.Bootstrap第一部分:起步

  下载

  基本模板

<html lang="zh-cn">

<html lang="en-us">

HTML标签的lang属性(language)指定当前页面所使用的自然语言,如zh、zh-cn、zh-tw、zh-hk、en、en-uk、ja、de、fr....

作用1:指定当前页面的基础语言,为浏览器的翻译做准备

作用2:为盲人的屏幕阅读器指明基础发音

 

<meta http-equiv="X-UA-Compatible" content="IE=6">

<meta http-equiv="X-UA-Compatible" content="IE=edge">

Cross-UserAgent-Compatible,跨(IE)浏览器兼容性

IE 6: 非常多的专有对象

IE 7: 6/7

IE 8 :  6/7/8

IE 9 :  6/7/8/9

IE 10 : 6/7/8/9/10

IE 11 : 6/7/8/9/10/11

   edge:使用可用的最新版本的IE内核

 

html5shiv.js:第三方的JS文件,自调函数,让老IE支持HTML5语义标签。

respond.js:第三方的JS文件,自调函数,让老IE支持响应式网页——CSS3媒体查询技术

 

练习:找出Bootstrap.css对HTML标签的默认样式进行了哪些重置:

* { box-sizing:border-box; }

html { font-size:10px; font-family:'sans-serif'}

body { font-size:14px; font-family:'Helvatic Neue'; color:#333; background:#fff; }

h1 { font-size:36px; margin: 20px 0 10px 0;}

h2 { font-size:30px; margin: 20px 0 10px 0;}

h3 { font-size:24px; margin: 20px 0 10px 0;}

h4 { font-size:18px; margin: 10px 0 10px 0;}

h5 { font-size:14px; margin: 10px 0 10px 0;}

h6 { font-size:12px; margin: 10px 0 10px 0;}

p { margin-bottom: 10px; }

a { color: #337ab7; text-decoration: none; }

ul { margin-bottom: 10px; margin-top:0}

img { vertical-align:middle; border:0; }

table { background:transparent; border-collapse:collapsed; }

div {  }

span {  }

上述样式重置很多依赖于normalize.css第三方样式文件。

 

 

7.Bootstrap第二部分——全局CSS样式

  与按钮相关样式:

.btn

.btn-default 白底黑字按钮

.btn-danger 红色

.btn-warning 黄色

.btn-success 绿色

.btn-info 浅蓝色

.btn-primary 深蓝色

.btn-lg 大号

.btn-sm 小号

.btn-xs 超小号

.btn-block 块级按钮

  与图片相关的样式:

.img-rounded 圆角图片

.img-circle 圆形图片

.img-thumbnail 缩略图片

.img-responsive 响应式图片

   与列表相关的样式:

.list-unstyled 没有提示符的列表

.list-inline 行内列表

   与文本相关的样式:

.text-danger

.text-success

.text-warning

.text-info

.text-primary

.bg-danger

.bg-success

.bg-warning

.bg-info

.bg-primary

.text-left

.text-right

.text-center

.text-justify

.text-uppercase

.text-lowercase

.text-capitalize

 

 

 

课后作业:

(1)em和rem的区别

(2)自学“全局CSS样式”: 辅助类、排版、代码

(3)使用媒体查询编写如下的响应式网页:

     

 

 

 

 

 

 

 

 

bootStrap day02

复习:

响应式页面:

  (1)声明viewport元标签

  (2)容器尽量使用相对尺寸

  (3)文字尽量使用相对大小

  (4)图片尽量使用相对尺寸

  (5)布局使用流式布局

  (6)使用CSS3 Media Query

Bootstrap是一个HTML/CSS/JS框架,适用于响应式Web页面开发。内容分为五部分:

(1)起步

下载、基本模板、实例、Bootlint、兼容性

(2)全局CSS样式

(3)组件

(4)JS插件

(5)定制

 

全局CSS样式:

  按钮:

.btn  .btn-default

.btn-danger/warning/success/info/primary

.btn-lg/默认/sm/xs

.btn-block

  图片:

.img-rounded

.img-circle

.img-thumbnail

.img-responsive

  列表:

.list-unstyled

.list-inline

  文本:

.text-五种颜色

.bg-五种颜色

.text-left/right/center/justify

.text-uppercase/lowercase/capitalize

 

 

今日目标:

(1)全局CSS样式——表格、栅格布局表单

(2)组件——简单的组件

 

1.Boostrap第二部分:全局CSS样式——辅助类

  .pull-left

  .pull-right

  .caret

  .close

  .center-block

 

2.Boostrap第二部分:全局CSS样式——排版&代码

 

 

3.Boostrap第二部分:全局CSS样式——表格

  .table

  .table-bordered 带边框的表格

  .table-striped 隔行变色的表格

  .table-hover 鼠标悬停变色的表格

  .table-responsive 响应式表格,用于TABEL父元素DIV

Bootlint:官方提供的一个用于检查HTML/CSS使用方面错误的工具。

  练习:如何为tr和td修改背景颜色 —— 自己查看手册

 

4.Boostrap第二部分:全局CSS样式——栅格布局系统——重点

  页面内容布局的三种方式:

  (1)TABLE布局

好处:简单容易控制

  问题:语义错误,渲染效率低

  (2)DIV+CSS布局

好处:语义正确,渲染效率高

问题:不容易控制

  (3)Bootstrap栅格布局系统

好处:语义正确,渲染效率高,简单容易控制,实现了响应式

不足:没有!

 

栅格布局系统的使用方法:

(1)栅格系统的父元素必须是:

div.container - 定宽容器  

LG:1170px MD:970px SM: 750px XS:100%

div.container-fluid - 变宽容器

width:100%

(2)在容器中声明“行”

div.container > div.row

(3)在“行”中声明“列”

div.container > div.row > div.col-*-*

(4)列根据不同的屏幕尺寸分为四组:

.col-lg-*

.col-md-*

.col-sm-*

.col-xs-*

(5)一行均分为12等份,每个列必须指定自己的占比:

.col-lg-1

.col-lg-2

.col-lg-3

.col-lg-...

.col-lg-12

(6)列可以向后“偏移”指定的宽度

.col-lg-offset-1

.col-lg-offset-2

.col-lg-offset-....

.col-lg-offset-12

 

(7)不同屏幕宽度下的列宽度占比适用于指定屏幕以及更大屏幕

.col-xs-* 适用于xs/sm/md/lg屏幕

.col-sm-* 适用于sm/md/lg屏幕

.col-md-* 适用于md/lg屏幕

.col-lg-* 适用于lg屏幕

(8)一个列可以指定不同屏幕下的不同宽度占比

<div class="col-xs-12  col-sm-9  col-md-6">

<div class="col-xs-12  col-md-6">

(9)可以指定列在特定的屏幕下实现隐藏

.hidden-lg

.hidden-md

.hidden-sm

.hidden-xs

.hidden

注意:隐藏只对指定屏幕有效!

(10)栅格系统可以嵌套使用

<div class="row">

<div class="col-xs-1">

<div class="row">

<div class="col-xs-6"></div>

</div>

</div>

</div>

 

(11)列的排序问题——待续

 

 

午间练习:使用栅格系统实现如下页面布局:

<input class="form-control">

 

重点练习:响应式网页示例:

  

 

5.Boostrap第二部分:全局CSS样式——表单——难点

  难点:(1)相关class较多  (2)HTML结构复杂——HTML5规范

  Bootstrap提供了三种形式的表单:

  (1)默认表单

 

<form>

<div class="form-group">

<label class="control-label"></label>

<input class="form-control">

<span class="help-block"></span>

</div>

</form>

  (2)行内表单

 

<form class="form-inline">

<div class="form-group">

<label class="sr-only"></label>

<input class="form-control">

</div>

</form>

  (3)水平表单

  提示:水平表单指在一行中放置label、input、span,需要整合栅格布局系统(变种) 和 表单相关内容。

 

标准栅格系统

水平表单中栅格

外层容器

div.container  或

div.container-fluid

form.form-horizontal

div.row

div.form-group

div.col-*-*

div.col-*-*

 

<form class="form-horizontal ">   <!--.container-->

<div class="form-group">   <!--.row-->

  <div class="col-*-*>   <!--.col-*-*-->

<label class="sr-only"></label>

  </div>

  <div class="col-*-*">

<input class="form-control">

  </div>

</div>

</form>

练习:如何在输入框中放置一个对勾、叉号、放大镜?

 

 

8.Bootstrap第三部分:组件 —— 下拉菜单

  下拉菜单必需的三级结构:

  <div class="dropdown">

<a data-toggle="dropdown">触发元素</a>

<ul class="dropdown-menu">隐藏的菜单</ul>

  </div>

  提示:后面必需引入bootstrap.js,其中会查找data-toggle="dropdown"元素,为其绑定事件监听函数。

 

9. Bootstrap第三部分:组件 —— 警告框

  <div class="alert alert-四种颜色 alert-dismissible">

<span class="close" data-dismiss="alert">×</span>

任意文本内容

  </div>

 

 

 

 

 

 

 

 

 

 

课后练习:

(1)面试题:Bootstrap为什么把一行等分为12份?

(2)完成“英特尔中国官网首页”的内容和布局

  提示:不用处理字体和颜色相关样式

 

 

 

 

 

 

 

 

 

 

bootStrap day03

 

复习:

Bootstrap是一个HTML/CSS/JS框架,适用于响应式Web项目,内容涉及到:

  HTML: 基于H5已有标签添加了data-*属性

  CSS: (1)CSSReset   (2)个class

  JS: 基于jQuery提供了十几个插件函数

分为五部分:

(1)起步

下载、模板、实例、Bootlint、兼容性

(2)全局CSS样式

按钮、图片、列表、文本、辅助类、表格、栅格系统、表单(默认、行内、水平)

(3)组件

下拉菜单、警告框

(4)JS插件

(5)定制

 

<div class="dropdown">

<a data-toggle="dropdown">触发元素</a>

<ul class="dropdown-menu"></ul>

</div>

 

<div class="alert alert-颜色 alert-dismissible">

<span class="close" data-dismiss="alert">×</span>

任意文字

</div>

 

今日目标

(1)组件 —— 难点在响应式导航条

(2)插件 ——

 

 

1.补充知识点:Bootstrap全局CSS样式——栅格系统

  列偏移(offset):

控制某列向右错位,并影响后续所有的列

.col-lg/md/sm/xs-offset-*

作用:列左右留白、列右对齐、列居中

  列排序:

控制某列向右/左移动,并不影响其他列

 

.col-lg-push-1/2/.../12

.col-lg-pull-1/2/.../12

作用:在特定屏幕下临时调整列的出现位置

 

 

2.Bootstrap第三部分:组件——下拉菜单

 

3.Bootstrap第三部分:组件——警告框

 

4.Bootstrap第三部分:组件——图标字体

  图标字体:本质是文字,不是图片,可以随意变大、添加下划线、变斜体、改颜色。

  Web应用中常用图标字体: FontAwesome、Glyphicons

  因为客户端都没有上述字体文件,必须应用服务器端字体:

  @font-face {

font-family: 'Glyphicon'; /*声明服务器端字体*/

src: url(../fonts/glyphicons....ttf) /*服务器端字体下载位置*/

  }

  .glyphicon {

font-family: 'Glyphicon'; /*使用服务器端字体*/

  }

  .glyphicon-alert:before {

content: '\9fc3';

  }

Bootstrap提供了200+个Glyphicons图标,使用方法:

<span class="glyphicon glyphicon-*"></span>

提示:使用图标字体的HTML标签中不能有任何子元素或内容!

 

练习:使用如下的常用图标:

首页、配置、用户、定位、刷新、搜索、邮件、星星、心形、加号、减号、对勾、叉号、上一张、下一张、前进、后退、播放、暂停、快进、快退

 

5.Bootstrap第三部分:组件——按钮组

  把多个按钮放在一起组成小组

  .btn-group > .btn*n

  .btn-group.btn-group-justified > .btn*n

  .btn-group-vertical > .btn*n

 

6.Bootstrap第三部分:组件——导航(nav)

  Boostrap提供了三种形式的导航组件:

  (1)标签页式导航(页签组件)

<ul class="nav nav-tabs">

<li class="active"><a data-toggle="tab"></a></li>

</ul>

  (2)胶囊式导航

<ul class="nav nav-pills">

<li class="active"><a data-toggle="tab"></a></li>

</ul>

  (3)导航条专用导航

 

 

午间自学——非常简单:

面包屑(路径导航) breadbrumb、

分页条 pagination、

分页器 pager、

标签 label、label-颜色

徽章 badge、

巨幕 jumbotron、

水井 well、

页头 page-header、

进度条 progress > progress-bar

 

 

7.Bootstrap第三部分:组件——缩略图

  可以用于A元素或者DIV元素,用于展示一系列条目中的一个。

 练习:使用栅格系统+缩略图实现“商城中的商品列表”

 

 

8.Bootstrap第三部分:组件——媒体对象

  媒体对象常用于商品列表:

<div class="media">

<div class="media-left">图片</div>

<div class="media-body">主体</div>

<div class="media-right">图片</div>

</div>

 

 

9.Bootstrap第三部分:组件——列表组

  用法1:无鼠标悬停效果

<ul class="list-group">

<li class="list-group-item"></li>

</ul>

  用法2:有鼠标悬停效果

<div class="list-group">

<a class="list-group-item"></div >

</div>

 

10.Bootstrap第三部分:组件 —— 面板组件 —— 小难点

  面板:在Bootstrap中是一种呈现“头部-主体-尾部”三层结构的组件。

<div class="panel">

<div class="panel-heading"></div>

<div class="panel-body"></div>

<div class="panel-footer"></div>

</div>

  提示:面板组件中尤其适合放置 <table class="table">

 

 

 

11.Bootstrap第四部分:JS插件 —— Collapse

  折叠效果,本身使用很简单:

<a data-toggle="collapse" href="cid">触发元素</a>

<div id="cid" class="collapse in">

内容

</div>

  折叠效果有两个使用场景:

  (1)手风琴: 折叠效果插件 + 面板组

  (2)响应式导航条

 

12.Bootstrap第三部分:组件 —— 响应式导航条 —— 最难点

  注意:响应式导航条的结构——只有从手机屏幕才能看出来!

  

  代码结构:

<div class="navbar">

<div class="container">

<div class="navbar-header">

商标和汉堡包按钮

</div>

<div class="navbar-collapse collapse">

能够折叠隐藏的内容,如导航、表单、链接...

</div>

</div>

</div>

  导航条的种类:按颜色:

浅色底深色字:.navbar.navbar-default

深色底浅色字:.navbar.navbar-inverse

  导航条的种类:按定位:

相对定位(占空间):.navbar

固定定位(不占空间):.navbar.navbar-fixed-*

  导航条的种类:按位置:

固定在顶部:.navbar.navbar-fixed-top

固定在底部:.navbar.navbar-fixed-bottom

 

 

 

前端实现动画可用的技术:

(1)CSS3 Transition技术

(2)CSS3 Keyframes技术

(3)JS定时器 —— jQuery1/2动画函数都是定时器动画

(4)requestAnimationFrame技术 —— jQuery3

 

 

 

课下任务:

(1)面试题:如何实现斜纹状背景色?菱形背景色?菱形的图片显示?

(2)百度百科:网页无障碍阅读-网页可访问性(Accessible)  

<ANY aria-*=""  role="" >

(3)为英特尔官网首页添加导航条,添加“大小小”中的内容

  提示:需要编写不少的媒体查询样式和JS

 

 

 

 

bootStrap day04

复习:

见思维导图

 

今日目标:

(1)Bootstrap第四部分:插件 —— 掌握

(2)Less语言 —— 重点

(3)Bootstrap第五部分:定制 —— 难点

 

 

1.Bootstrap插件概述

  Bootstrap一共提供了十几个插件函数,可以单个引入,也可以一次性全部引入(bootstrap.js)

  使用方法有两种:

  (1)使用JS方式调用

$('div').modal( );

  (2)使用data-*方式调用 —— 推荐写法

<div data-toggle="modal">

 

2.Bootstrap第四部分:插件 —— 下拉插件

  1)JS方式调用:

$('.dropdown  a').dropdown( );

  2)data-*方式调用:

<a data-toggle="dropdown">

 

3.Bootstrap第四部分:插件 —— 警告框

  2)data-*方式调用:

<div class="alert alert-四种颜色">

<span class="close" data-dismiss="alert">×</span>

文字内容

</div>

 

3.Bootstrap第四部分:插件 ——折叠效果

  2)data-*方式调用:

<a data-toggle="collapse" href="target">触发元素</a>

<div id="target" class="collapse"></div>

 

 

Model:  数据模型

Modal:  模态对话框

Module:  模块

 

 

4.Bootstrap第四部分:插件 —— 模态框

  modal:模态对话框,在父窗口中打开了一个子窗口,只要子窗口不关闭,则父窗口无法获得输入焦点——该子窗口就称为“模态子窗口”。浏览器中默认: window.alert()/confirm()/prompt() 都是模态子窗口,但无法定制。

  一般项目中,使用DIV模拟出模态子窗口的效果:

<a data-toggle="modal" href="#modal-login">弹出模态对话框</a>

 

<div id="modal-login" class="modal"> <!--半透明的遮罩层-->

  <div class="modal-dialog"> <!--尺寸和定位-->

    <div class="modal-content">  <!--背景/边框/倒角/阴影-->

      <div class="modal-header">

        <span class="close" data-dismiss="modal">×</span>

        头部

      </div>

      <div class="modal-body">主体</div>

      <div class="modal-footer">尾部</div>

    </div>

  </div>

</div>

 

午间练习:修改intel项目首页,点击“登录”后弹出模态对话框:

 

 

 

5.Bootstrap第四部分:插件 —— 工具提示(tooltip)

  提示:不单要用data-*,还要调用js

 

6.Bootstrap第四部分:插件 —— 弹出框(popover)

  提示:不单要用data-*,还要调用js

 

 

7.Bootstrap第四部分:插件 —— 轮播广告(Carousel)

  Carousel:旋转木马、轮播广告

  提示:Bootstrap提供的轮播广告结构复杂,只需要记住最外层容器div.carousel,其余内容全部靠Bootlint提示即可。

 

练习:

  为轮播广告添加“上一张/下一张”轮播控件;

  为轮播广告添加“1/2/3/4”序号指示器;

 

8.自学:Bootstrap第四部分:插件 —— 附加导航(Affix)

9.自学:Bootstrap第四部分:插件 —— 滚动监听(ScrollSpy)

 

10.样式语言的分类

  (1)静态样式语言

即CSS,可以直接被浏览器解释执行。作为一门语言,CSS有缺陷的,如缺少:类型、变量、运算、函数、对象和继承等等语言必需的基本概念,导致了CSS样式代码可维护性差。

  (2)动态样式语言

在CSS基础上添加了动态语言必需的因素,如类型、变量、运算、函数、对象和继承等,极大了提高了样式代码的可维护性。常见的动态样式语言:

1)Sass / SCSS

  2)Stylus

   3)Less

注意:浏览器只能解析CSS,所以所有的动态样式语言的代码都必须转换为CSS才能执行——此过程称为动态样式代码的“编译(Compile)”

 

11.动态样式语言——Less概述

  官网:http://lesscss.org/

  中文网:http://less.bootcss.com/

 

一个更简单的网站:  http://www.1024i.com/demo/less/

 

  Less 是一门 CSS 预处理语言,它扩充了 CSS 语言,增加了诸如变量、混合(mixin)、函数等功能,让 CSS 更易维护、方便制作主题、扩充。

 

  Less文件有两种使用方法:

  (1)在客户端使用Less —— 仅作了解

创建x.less;

创建x.html,引入x.less,引入less.js(Less编译器)

客户端请求x.html,下载.less和.js两个文件,在浏览器中运行less.js把x.less文件编译为css代码。

  (2)在服务器端使用Less —— 推荐方法

创建x.less;

程序员在自己的电脑上安装less编译器;

程序员执行less编译器,把x.less 编译为 x.css;

创建x.html,引入x.css;

客户端请求html,下载css,直接运行即可

 

很容易出错的地方:—— 如何在服务器端搭建Less编译环境

(1)下载并安装一款独立于浏览器的JS解释器——Node.js

   成功的标志:  

node  -v   能够显示出版本号

(2)下载并安装Less编译器程序:lessc.js

   成功的标志: 能够找到

C:\npm\node_modules\less\bin\lessc —— JS文件

(3)运行JS解释器,执行lessc.js,编译.less文件得到.css文件

node  C:\npm\node_modules\less\bin\lessc  e:\5.less   >   e:\5.css

成功的标志: 在e盘多出一个5.css文件

   此步也可以用WebStorm中的FileWatcher功能来实现

   (3.1)配置WebStorm中的FileWatcher,指定lessc位置

   (3.2)只要用户新建/修改.less文件,WS会自动调用lessc程序把.less编译为.css

  

 

12.Less语法学习

  (1)Less支持CSS所有的语法

  (2)Less支持多行/单行注释,但CSS只支持多行注释,所以Less中的单行注释不会被编译到CSS文件

  (3)Less有变量(Variable)的概念

声明变量: @变量:  值;

使用变量: 选择器 {  样式:  @变量;  }              .@{变量名} {   }

变量值可以是任意合法的样式值。

  (4)Less可以执行样式/变量的计算

加、减、乘、除、取余

  (5)Less支持样式的混入(Mixin)

选择器1 { 样式; }

选择器2 {

选择器1;

样式;

}

  (6)Less在样式混入时可以指定参数

选择器1(@变量, @变量...) { 样式; }

选择器2 {

选择器1(, 值...);

样式;

}

  (7)Less支持样式嵌套

选择器1 {

样式1;

选择器2 {

样式2;

}

}

会被编译为:

选择器1 {  样式1;  }

选择器1  选择器2 {  样式2;  }

  (8)Less为样式提供了几十个可用的函数

ceil( )

floor( )

percentage( 5/10 ) // 50%

round( )

lighten(@c,  20%) 颜色变淡指定的百分比

darken(@c,  30%) 颜色变暗指定的百分比

....

  (9)Less支持文件包含指令

CSS提供了@import指令,可用于包含其它的CSS文件,但由于会增加请求次数,不推荐使用;

Less也提供了@import指令,可用于包含其它的Less文件,推荐使用!—— Less的文件包含是在服务器端执行的文件拼合,客户端的一次请求就可以获得所有样式!

@import  "xx.less"; 

 

练习:观察Bootstrap真正的Less源代码文件的结构

 

 

 

13.通过修改Bootstrap的Less源文件实现定制

   定制目标:

  (1)Bootstrap瘦身,删除不必要的样式

注释掉bootstrap.less中不需要的@import即可

  (2)修改Boostrap默认的样式值,实现粗粒度定制

修改variables.less中变量的值即可

  (3)修改Boostrap组件的细节样式,实现细粒度定制

修改特定的组件对应的.less文件,如dropdown.less

 

 

 

课后任务:

(1)仿写Bootstrap起步中的“示例”

(2)实现“我的大项目”响应式版本中样式的定制

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园整体解决方案是响应国家教育信息化政策,结合教育改革和技术创新的产物。该方案以物联网、大数据、人工智能和移动互联技术为基础,旨在打造一个安全、高效、互动且环保的教育环境。方案强调从数字化校园向智慧校园的转变,通过自动数据采集、智能分析和按需服务,实现校园业务的智能化管理。 方案的总体设计原则包括应用至上、分层设计和互联互通,确保系统能够满足不同用户角色的需求,并实现数据和资源的整合与共享。框架设计涵盖了校园安全、管理、教学、环境等多个方面,构建了一个全面的校园应用生态系统。这包括智慧安全系统、校园身份识别、智能排课及选课系统、智慧学习系统、精品录播教室方案等,以支持个性化学习和教学评估。 建设内容突出了智慧安全和智慧管理的重要性。智慧安全管理通过分布式录播系统和紧急预案一键启动功能,增强校园安全预警和事件响应能力。智慧管理系统则利用物联网技术,实现人员和设备的智能管理,提高校园运营效率。 智慧教学部分,方案提供了智慧学习系统和精品录播教室方案,支持专业级学习硬件和智能化网络管理,促进个性化学习和教学资源的高效利用。同时,教学质量评估中心和资源应用平台的建设,旨在提升教学评估的科学性和教育资源的共享性。 智慧环境建设则侧重于基于物联网的设备管理,通过智慧教室管理系统实现教室环境的智能控制和能效管理,打造绿色、节能的校园环境。电子班牌和校园信息发布系统的建设,将作为智慧校园的核心和入口,提供教务、一卡通、图书馆等系统的集成信息。 总体而言,智慧校园整体解决方案通过集成先进技术,不仅提升了校园的信息化水平,而且优化了教学和管理流程,为学生、教师和家长提供了更加便捷、个性化的教育体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值