内容简介
上册
第1章 Web时代的变迁
1.1迎接新的Web时代
1.1.1 HTML 5时代即将来临
1.1.2 HTML 5的目标
1.1.3 HTML5的小版本更新
1.2 HTML 5深受欢迎的理由
1.2.1世界知名浏览器厂商对HTML5的支持
1.2.2第一个理由:时代的要求
1.2.3第二个理由:Internet Explorer 8
1.3可以放心使用HTML5的三个理由
1.4 HTML 5要解决的三个问题
第2章 HTML 5与HTML 4的区别
2.1语法的改变
2.1.1 HTML 5的语法变化
2.1.2 HTML 5中的标记方法
2.1.3 HTML 5确保的兼容性
2.1.4标记示例
2.2新增的元素和废除的元素
2.2.1新增的结构元素
2.2.2新增的其他元素
2.2.3新增的input元素的类型
2.2.4废除的元素
2.3新增的属性和废除的属性
2.3.1新增的属性
2.3.2废除的属性
2.4全局属性
2.4.1 contentEditable属性
2.4.2 designMode属性
2.4.3 hidden属性
2.4.4 spellcheck属性
2.4.5 tabindex属性
2.5新增的事件
2.6只监听一次事件
第3章 HTML5的结构
3.1新增的主体结构元素
3.1.1 article元素
3.1.2 section元素
3.1.3 nav元素
3.1.4 aside元素
3.1.5 time元素与微格式
3.1.6 pubdate属性
3.2新增的非主体结构元素
3.2.1 header元素
3.2.2 footer元素
3.2.3 address元素
3.2.4 main元素
3.3 HTML 5中网页结构
3.3.1 HTML 5中的大纲
3.3.2大纲的编排规则
3.3.3对新的结构元素使用样式
第4章 表单及其他新增和改良元素
4.1新增元素与属性
4.1.1新增属性
4.1.2大幅度地增加与改良input元素的种类
4.1.3对新的表单元素使用样式
4.1.4 output元素的追加
4.2表单验证
4.2.1自动验证
4.2.2取消验证
4.2.3显式验证
4.3增强的页面元素
4.3.1新增的figure元素与figcaption元素
4.3.2新增的details元素与summa元素
4.3.3新增的mark元素
4.3.4新增的progress元素
4.3.5新增的meter元素
4.3.6新增的dialog元素
4.3.7改良的a元素
4.3.8改良的ol列表
4.3.9改良的dl列表
4.3.10加以严格限制的cite元素
4.3.11重新定义的small元素
4.3.12安全性增强的iframe元素
4.3.13增强的script元素
第5章 ECMAScript中的新增功能
5.1新增语法
5.1.1使用for-of循环
5.1.2使用let关键字与const关键字声明变量
5.1.3使用class关键字声明类
5.1.4不确定参数及默认参数值
5.1.5箭头函数
5.1.6生成器函数
5.1.7解构赋值
5.1.8模板字符串
5.1.9在客户端使用JavaScript模块
5.2新增对象及数据类型
5.2.1 Promise对象
5.2.2全局唯一标识符:symbol
5.2.3代理与反射
5.2.4新增的各种集合对象
5.3对现有对象的扩展
第6章 文件API
6.1 FileList对象与file对象
6.2 ArrayBuffer对象与ArrayBuffer-View对象
6.2.1基本概念
6.2.2 ArrayBuffer对象
6.2.3 ArrayBufferView对象
6.2.4 DataView对象
6.3 Blob对象
6.3.1 Blob对象概述
6.3.2创建Blob对象
6.3.3 Blob对象的slice方法
6.4 FileReader对象
6.4.1 FileReader对象的方法
6.4.2 FileReader对象的事件
6.4.3 FileReader对象的使用示例
第7章 本地存储
7.1 Web Storage
7.1.1 Web Storage是什么
7.1.2简单Web留言本
7.1.3作为简易数据库来利用
7.1.4利用storage事件实时监视Web Storage中的数据
7.2 indexedDB数据库
7.2.1本地数据库的基本概念
7.2.2 indexedDB数据库的基本概念
7.2.3连接数据库
7.2.4数据库的版本更新
7.2.5创建对象仓库
7.2.6创建索引
7.2.7索引的multiEntry属性值
7.2.8使用事务
7.2.9保存数据
7.2.10在indexedDB数据库中保存Blob对象
7.2.11获取数据
7.2.12根据主键值检索数据
7.2.13根据搜索范围获取数据的主键值
7.2.14根据索引属性值检索数据
7.2.15 获取所有数据
7.2.16复合索引
7.2.17统计对象仓库中的数据数量
7.2.18列举数据库中所有对象仓库的名称
7.2.19列举事务中所有可访问对象仓库名称
7.2.20删除对象仓库
7.2.21根据主键删除单条数据
7.2.22列举对象仓库的所有索引名称及删除索引
7.2.23使用索引对象的方法
7.2.24在指定范围中抽取数据主键
7.2.25使用游标对象的方法
第8章 扩展的XMLHttpRequestAPI及FetchAPI
8.1从服务器端获取二进制数据
8.1.1 ArrayBuffer响应
8.1.2 Blob响应
8.2发送数据
8.2.1发送字符串
8.2.2发送表单数据
8.2.3上传文件
8.2.4发送Blob对象
8.2.5发送ArrayBuffer对象
8.3跨域数据请求
8.4使用Fetch API
8.4.1告别XMLHttpRequest
8.4.2使用Fetch API发出请求
8.4.3向服务器端发送POST请求
8.4.4提交JSON数据
8.4.5发送表单数据
8.4.6上传文件
8.4.7提交及下载Blob对象或ArrayBuffer对象
第9章 使用Web Workers处理 线程
9.1基础知识
9.2与线程进行数据的交互
9.3线程嵌套
9.3.1单层嵌套
9.3.2在多个子线程中进行数据的交互
9.4线程中可用的变量、函数与类
9.5适用场合
9.6 SharedWorker
9.6.1基础知识
9.6.2实现前台页面与后台线程之间的通信
9.6.3定义页面与共享的后台线程开始通信时的处理
9.6.4 SharedWorker的使用示例
第10章 使用Service Worker实现离线应用程序
10.1 Service Worker的基本概念
10.2注册、下载及安装
10.3自定义请求的响应
10.4激活
10.5其他用例
第11章 通信API
11.1跨文档消息传输
11.1.1跨文档消息传输的基本知识
11.1.2跨文档消息传输示例
11.1.3通道通信
11.2 WebSockets通信
11.2.1 WebSockets通信的基本知识
11.2.2使用WebSockets API
11.2.3 WebSockets API使用示例
11.2.4发送对象
11.2.5发送与接收原始二进制数据
11.2.6实现WebSockets API的开发框架
11.2.7 WebSocket协议
11.2.8 WebSockets API的适用场景
11.3 Server-Sent Events API
11.3.1 Server-Sent Events API的基本概念
11.3.2 Server-Sent Events API的实现方法
11.4 BroadcastChannel API
11.4.1 BroadcastChannelAPI的基本概念
11.4.2与其他技术的区别
第12章 Web组件
12.1使用template元素定制客户端模板
12.1.1特性检测
12.1.2定义模板内容
12.1.3动态设置模板内容
12.1.4模板中嵌套模板
12.2自身独立的Shadow DOM组件
12.2.1 Shadow DOM的基本概念
12.2.2创建Shadow DOM
12.2.3实现内容与展示的分离
12.2.4对Shadow DOM使用样式
12.2.5高级主题
12.3自定义元素
12.3.1自定义元素的基本概念
12.3.2自定义全新的HTML元素
12.3.3扩展元素
12.3.4在JavaScript脚本代码中创建自定义元素
12.3.5自定义元素响应
12.3.6自定义元素的属性
12.3.7指定自定义元素的内容
12.3.8指定自定义元素的样式
12.4 HTML导入
12.4.1 HTML导入所能解决的课题
12.4.2 HTML导入的基本概念
12.4.3打包资源
12.4.4 load事件与error事件
12.4.5使用被导入文档
12.4.6传输Web组件
12.4.7管理依赖和子导入
12.4.8 性能注意事项
12.4.9 HTML导入的要点
12.4.10 HTML导入的使用案例
第13章 绘制图形
13.1 canvas元素的基础知识
13.1.1在页面中放置canvas元素
13.1.2绘制矩形
13.2使用路径
13.2.1绘制圆形
13.2.2不关闭路径会怎么样
13.2.3绘制直线
13.2.4绘制曲线
13.2.5使用Path2D对象绘制路径
13.3绘制渐变图形
13.3.1绘制线性渐变
13.3.2绘制径向渐变
13.4绘制变形图形
13.4.1坐标变换
13.4.2坐标变换与路径的结合使用
13.4.3矩阵变换
13.5给图形绘制阴影
13.6使用图像
13.6.1绘制图像
13.6.2图像平铺
13.6.3图像裁剪
13.6.4像素处理
13.7图形、图像的组合与混合
13.7.1组合图形
13.7.2混合图像
13.8绘制文字
13.9补充知识
13.9.1保存与恢复状态
13.9.2将canvas元素中的图像转换为data URL
13.9.3将canvas元素中的图像转换为Blob对象
13.9.4简单动画的制作
13.9.5解码图像
第14章 多媒体相关API
14.1 video元素与audio元素的基础知识
14.2属性
14.3方法
14.4事件
下册
第15章 CSS 3概述
15.1概要介绍
15.1.1 CSS 3是什么
15.1.2 CSS 3的历史
15.2使用CSS 3能做什么
15.2.1模块与模块化结构
15.2.2一个简单的CSS 3示例
第16章 选择器
16.1选择器概述
16.2属性选择器
16.2.1属性选择器概述
16.2.2 CSS 3中的属性选择器
16.2.3灵活运用属性选择器
16.3结构性伪类选择器
16.3.1 CSS中的伪类选择器及伪元素
16.3.2选择器root、not、emp和target
16.3.3选择器first-child、last-child、nth-child和nth-last-child
16.3.4选择器nth-of-type和nth-last-of-type
16.3.5循环使用样式
16.3.6 only-child选择器
16.4 UI元素状态伪类选择器
16.4.1伪类选择器E:hover、E:active和E:focus
16.4.2伪类选择器E:enabled与E:disabled
16.4.3伪类选择器E:read-only与E:read-write
16.4.4伪类选择器E:checked、E:default和E:indetermninate
16.4.5伪类选择器E::selection
16.4.6伪类选择器E:invalid与E:valid
16.4.7伪类选择器E:required与E:optional
16.4.8伪类选择器E:in-range与E:out-of-range
16.5通用兄弟元素选择器
第17章 使用选择器在页面中插入内容
17.1使用选择器来插入文字
17.1.1使用选择器来插入内容
17.1.2指定个别元素不进行插入
17.2插入图像文件
17.2.1在标题前插入图像文件
17.2.2插入图像文件的好处
17.2.3将alt属性的值作为图像的标题来显示
17.3使用content属性来插入项目编号
17.3.1在多个标题前加上连续编号
17.3.2在项目编号中追加文字
17.3.3指定编号的样式
17.3.4指定编号的种类
17.3.5编号嵌套
17.3.6中编号中嵌入大编号
17.3.7在字符串两边添加嵌套文字符号
第18章 文字与字体相关样式
18.1给文字添加阴影——text-shadow属性
18.1.1 text-shadow属性的使用方法
18.1.2位移距离
18.1.3阴影的模糊半径
18.1.4阴影的颜色
18.1.5指定多个阴影
18.2让文本自动换行——word-break属性
18.2.1依靠浏览器让文本自动换行
18.2.2指定自动换行的处理方法
18.3让长单词与URL地址自动换行——word-wrap属性
18.4指定用户是否可选取文字的user-select属性
18.5使用服务器端字体——Web Font与@font-face属性
18.5.1在网页上显示服务器端字体
18.5.2定义斜体或粗体字体
18.5.3显示客户端本地的字体
18.5.4属性值的指定
18.6修改字体种类而保持字体尺寸不变——font-size-adjust属性
18.6.1字体不同导致文字大小的不同
18.6.2 font-size-adjust属性的使用方法
18.6.3浏览器对于aspect值的计算方法
18.6.4 font-size-adjust属性的使用示例
18.7使用rem单位定义字体大小
第19章 盒相关样式
19.1盒的类型
19.1.1盒的基本类型
19.1.2 inline-block类型
19.1.3 inline-table类型
19.1.4 list-item类型
19.1.5 run-in类型与compact类型
19.1.6表格相关类型
19.1.7 none类型
19.1.8各种浏览器对于各种盒类型的支持情况
19.2对于盒中容纳不下的内容的显示
19.2.1 overflow属性
19.2.2 overflow-x属性与overflow-y属性
19.2.3 text-overflow属性
19.3对盒使用阴影
19.3.1 box-shadow属性的使用方法
19.3.2将参数设定为0
19.3.3创建盒内阴影
19.3.4对盒内子元素使用阴影
19.3.5对第一个文字或第一行使用阴影
19.3.6对表格及单元格使用阴影
19.4指定针对元素的宽度与高度的计算方法
19.4.1 box-sizing属性
19.4.2为什么要使用box-sizing属性
第20章 背景与边框相关样式
20.1与背景相关的新增属性
20.1.1指定背景的显示范围——background-clip属性
20.1.2指定背景图像的绘制起点——background-origin属性
20.1.3指定背景图像的尺寸——background-size属性
20.1.4新增的用于平铺背景图像的选项——space与round
20.2在一个元素中显示多个背景图像
20.3使用渐变色背景
20.3.1绘制线性渐变
20.3.2绘制放射性渐变
20.4圆角边框的绘制
20.4.1 border-radius属性
20.4.2在border-radius属性中指定两个半径
20.4.3不显示边框的时候
20.4.4修改边框种类的时候
20.4.5绘制四个角不同半径的圆角边框
20.5使用图像边框
20.5.1 border-image属性
20.5.2 border-image属性的最简单的使用方法
20.5.3使用border-image属性来指定边框宽度
20.5.4指定4条边中图像的显示方法
20.5.5使用背景图像
第21章 CSS 3中的变形处理
21.1 transform功能的基础知识
21.1.1如何使用transform功能
21.1.2 transform功能的分类
21.2对一个元素使用多种变形
21.2.1对一个元素使用多种变形的方法
21.2.2指定变形的基准点
21.3使用3D变形功能
21.3.1 3D变形功能概述
21.3.2实现3D变形功能
21.4变形矩阵
21.4.1矩阵概述
21.4.2变形与坐标系统
21.4.3计算2D变形
21.4.4计算3D变形
21.4.5通过矩阵执行多重变形处理
第22章 CSS 3中的动画功能
22.1 Transitions功能
22.1.1 Transitions功能的使用方法
22.1.2使用Transitions功能同时平滑过渡多个属性值
22.2 Animations功能
22.2.1 Animations功能的使用方法
22.2.2实现多个属性值同时改变的动画
22.2.3实现动画的方法
22.2.4实现网页的淡入效果
22.3 Web Animations API
22.3.1 Web Animations API的基本概念
22.3.2 Web Animations API的使用示例
22.3.3控制动画播放
第23章 布局相关样式
23.1多栏布局
23.1.1使用float属性或position属性的缺点
23.1.2使用多栏布局方式
23.2盒布局
23.2.1使用float属性或position属性时的缺点
23.2.2使用盒布局
23.2.3盒布局与多栏布局的区别
23.3弹性盒布局
23.3.1对多个元素使用flex属性
23.3.2改变元素的显示顺序
23.3.3改变元素的排列方向
23.3.4元素宽度与高度的自适应
23.3.5使用弹性盒布局来消除空白
23.3.6对多个元素使用flex属性
23.3.7控制换行方式
23.3.8指定水平方向与垂直方向的对齐方式
23.4网格布局
23.4.1网格布局概述
23.4.2定义网格布局
23.4.3命名网格线
23.4.4使用区域
23.5 calc方法
23.5.1 calc方法概述
23.5.2 calc方法使用示例
第24章 媒体查询表达式与特性查询表达式
24.1媒体查询表达式
24.1.1根据浏览器的窗口大小来选择使用不同的样式
24.1.2在iPhone中的显示
24.1.3媒体查询表达式的使用方法
24.2特性查询表达式
第25章CSS 3的其他重要样式和属性
25.1颜色相关样式
25.1.1利用alpha通道来设定颜色
25.1.2 alpha通道与opacity属性的区别
25.1.3指定颜色值为transparent
25.2用户界面相关样式
25.2.1轮廓相关样式
25.2.2 resize属性
25.3使用initial属性值取消对元素的样式指定
25.3.1取消对元素的样式指定
25.3.2使用initial属性值并不等于取消样式设定的特例
25.4用于控制鼠标事件的pointer-events属性
25.5实现CSS 3中的滤镜特效
25.5.1滤镜特效概述
25.5.2实现滤镜特效
25.6 CSS变量
25.6.1 CSS变量的基本概念
25.6.2 CSS变量的定义方法
25.6.3 CSS变量的继承
25.6.4使用var函数
25.6.5在JavaScript脚本代码中使用CSS变量
第26章 综合实例
26.1实例概述
26.2 HTML 5页面代码分析
26.3 CSS 3样式代码分析
26.4 JavaScript脚本代码分析
26.4.1保存与读取本地数据库中数据
26.4.2使用Fetch API读取服务器端数据及提交数据到服务器端
26.4.3保存与读取LocalStorage中数据
26.4.4页面完整脚本代码