21天学编程系列 21天学通HTML5+CSS3 第2版
作者:(中国)宋灵香
出版时间:2019年版
内容简介
本书全面、系统、深入地讲解了HTML5+CSS3网页设计与编程的基础知识与高级应用。在讲解过程中,通过大量取自实际操作的案例,将网页开发知识全面、系统、深入地呈现给读者。此外,作者专门为本书录制了大量的配套教学视频,让读者通过分析实例、运行实例尽快熟悉网页编程,在学习遇到问题时,也可以作为参考。本书共分21章。第1~11章介绍HTML语言的语法、网页结构,网页中的图像、链接、表单、音频、视频、本地存储等;第12~18章介绍用来美化页面的CSS,包括CSS规则、选择符、盒布局、多列布局、动画、渐变、跨设备支持等;第19~21章通过3 个案例对网页设计的完整流程进行了讲解,帮助读者熟悉如何从大局着手搭建网站。本书在内容上涉及面广,从基本页面结构到HTML5和CSS3增强技术实现及综合案例,涉及目前网页设计与网站搭建的几乎所有技术。本书内容浅显易懂、实例丰富,尤其适合广大网页编程爱好者自学,也适合对网页开发语言感兴趣的读者作为参考书。
目录
第1章 了解网页
1.1 什么是网页
1.1.1 网页概述
1.1.2 静态网页
1.1.3 动态网页
1.1.4 动态页面和静态页面的联系
1.1.5 网页浏览器的工作原理
1.2 HTML和HTML5
1.2.1 超文本标记语言HTML
1.2.2 可扩展超文本标记语言XHTML
1.2.3 HTML5的设计理念
1.2.4 HTML页面的开发工具
1.3 实战:编写一个简单的页面(HTML和HTML5)
1.4 小结
1.5 本章习题
第2章 了解HTML网页的结构
2.1 用记事本打开一个页面
2.2 HTML基础
2.2.1 HTML的基础语法
2.2.2 HTML文档的结构
2.3 HTML文档中的标签
2.3.1 样本代码DOCTYPE
2.3.2 开始标签<html>
2.3.3 头标签和头标签的对象
2.3.4 标题标签<title>
2.3.5 体标签<body>
2.3.6 美化HTML文档
2.4 实战:从无到有地设计一个页面
2.5 小结
2.6 本章习题
第3章 网页的文本设计
3.1 新旧方法对比
3.2 文本的排版格式
3.2.1 写一行换一行
3.2.2 在页面文本中空格
3.2.3 文本的段落要对齐
3.3 文本的属性样式
3.3.1 不一样的文本字体样式
3.3.2 奇妙的特殊符号
3.3.3 给文本加标注
3.4 整齐的文本列表
3.4.1 无序列表
3.4.2 有序列表
3.4.3 定义列表
3.4.4 列表嵌套
3.5 实战:制作一则HTML网页版的通知
3.6 小结
3.7 本章习题
第4章 网页中的图像设计
4.1 图像的基础知识
4.1.1 最常用的位图图像
4.1.2 在页面中常用的位图格式
4.1.3 矢量图
4.1.4 图像的分辨率
4.1.5 了解一些网页中常用的Banner尺寸
4.2 页面中的图像
4.2.1 理解图像路径
4.2.2 像设置文本对齐一样在页面中对齐图片
4.2.3 图像与文本的对齐方式
4.2.4 控制图像与文本的距离
4.3 让图像更美观
4.3.1 使用画图工具修改图像
4.3.2 给图像添加边框
4.3.3 独树一帜的水平线
4.4 改变页面的背景
4.5 实战:把照片放到网页上
4.6 小结
4.7 本章习题
第5章 网页中的链接
5.1 网页链接
5.1.1 初识页面链接
5.1.2 理解链接地址
5.2 链接的种种不同
5.2.1 基本的文本链接
5.2.2 基本的图像链接
5.2.3 把邮箱留给需要联系你的人
5.2.4 在同一页面中快速查找信息
5.3 提高页面链接的友好度
5.3.1 美化链接的状态
5.3.2 特殊的链接方式
5.3.3 热点图像区域的链接
5.4 在新窗口中显示链接窗口
5.5 实战:一个带链接的电影排行榜页面
5.6 小结
5.7 本章习题
第6章 网页中的表单
6.1 表单的工作原理
6.1.1 <script>标记
6.1.2 创建表单
6.1.3 表单域
6.2 通过表单展示不一样的页面
6.2.1 input对象下的多种表单的表现形式
6.2.2 text:文本框的样式表单
6.2.3 password:输入密码的样式表单
6.2.4 checkbox:复选框的样式表单
6.2.5 radio:单选框的样式表单
6.2.6 submit:提交数据的样式表单
6.2.7 hidden:隐藏域的样式表单
6.2.8 image样式的表单
6.2.9 file:上传文件的样式表单
6.2.10 textarea对象的表单
6.2.11 select对象的表单
6.2.12 表单域集合
6.3 HTML5表单的进化
6.3.1 早期的表单发展
6.3.2 HTML5表单的出世
6.3.3 当前的支持情况
6.3.4 增加的表单输入类型
6.4 增加表单的特性及元素
6.4.1 form特性
6.4.2 formaction特性
6.4.3 formmethod、formenctype、formnovalidate、formtarget特性
6.4.4 placeholder特性
6.4.5 autofocus特性
6.4.6 autocomplete特性
6.4.7 list特性和datalist元素
6.4.8 keygen元素
6.4.9 output元素
6.5 表单验证API
6.5.1 与验证有关的表单元素特性
6.5.2 表单验证的属性
6.5.3 ValidityState对象
6.5.4 表单验证的方法
6.5.5 表单验证的事件
6.6 实战:表单构成的HTML页面
6.7 实战:表单构成的用户注册页面(HTML5)
6.7.1 案例简介
6.7.2 页面基本元素
6.7.3 实现表单验证
6.7.4 其他处理函数
6.8 小结
6.9 习题
第7章 音频和视频
7.1 audio和video的基础知识
7.1.1 在线多媒体的发展
7.1.2 多媒体术语
7.1.3 HTML5多媒体文件格式
7.1.4 功能缺陷及未来趋势
7.2 使用HTML5的audio和video元素
7.2.1 在页面中加入音频和视频
7.2.2 使用source元素
7.2.3 使用脚本检测浏览器的标签支持情况
7.2.4 audio和video的特性和属性
7.2.5 audio和video的接口方法
7.2.6 audio和video的事件
7.3 实战:自定义播放工具条
7.3.1 案例简介
7.3.2 网页基本元素
7.3.3 定义全局的视频对象
7.3.4 添加播放/暂停、前进/后退功能
7.3.5 添加慢进和快进功能
7.3.6 添加静音和调节音量的功能
7.3.7 添加进度显示功能
7.4 小结
7.5 本章习题
第8章 拖放功能
8.1 拖放API
8.1.1 draggable特性
8.1.2 光标拖放事件
8.1.3 DataTransfer对象
8.1.4 实战:拖放元素的内容
8.2 文件API
8.2.1 增加的标签特性
8.2.2 FileList对象与File对象
8.2.3 Blob对象
8.2.4 FileReader接口
8.3 实战:把图片拖入浏览器
8.3.1 案例简介
8.3.2 设计网页基本元素
8.3.3 基本函数的实现
8.3.4 页面加载处理
8.4 小结
8.5 本章习题
第9章 本地存储
9.1 本地存储对象――Web Storage
9.1.1 Web Storage简介
9.1.2 localStorage和sessionStorage
9.1.3 设置和获取Storage数据
9.1.4 Storage API的属性和方法
9.1.5 存储JSON对象的数据
9.1.6 Storage API的事件
9.1.7 实战:在两个窗口中实现通信
9.2 本地数据库――Web SQL Database
9.2.1 Web SQL Database简介
9.2.2 操作Web SQL数据库
9.2.3 实战:基本的数据库操作实例
9.3 小结
9.4 本章习题
第10章 利用Canvas绘制图形
10.1 认识Canvas
10.1.1 Canvas的历史
10.1.2 Canvas与SVG、VML之间的差异
10.2 Canvas的基本知识
10.2.1 构建Canvas元素
10.2.2 使用JavaScript实现绘图的流程
10.3 使用Canvas绘图
10.3.1 绘制矩形
10.3.2 使用路径
10.3.3 图形组合
10.3.4 绘制曲线
10.3.5 使用图像
10.3.6 剪裁区域
10.3.7 绘制渐变
10.3.8 描边属性
10.3.9 模式
10.3.10 变换
10.3.11 使用文本
10.3.12 阴影效果
10.3.13 状态的保存与恢复
10.3.14 操作像素
10.4 实战:在Canvas中实现动画
10.5 小结
10.6 本章习题
第11章 创建框架结构的页面
11.1 创建窗口框架页面
11.1.1 创建窗口框架的<frameset>和<frame>标签
11.1.2 横向分割窗口
11.1.3 纵向分割窗口
11.1.4 框架的嵌套
11.1.5 将页面放入窗口框架中
11.2 修饰框架的细节
11.2.1 给无法处理框架的浏览器注释说明
11.2.2 固定框架的位置
11.2.3 在框架中设置滚动条
11.3 修改框架边框的样式
11.3.1 判定边框是否显示
11.3.2 改变边框的表现效果
11.3.3 边框的边距
11.4 框架集中页面之间的链接
11.4.1 在指定的框架中打开链接
11.4.2 框架内的锚点链接
11.5 灵活的<iframe>框架
11.6 实战:制作自己的链接主页
11.7 小结
11.8 本章习题
第12章 CSS规则
12.1 如何学习CSS
12.2 CSS基本的规则写法
12.2.1 基本的样式表的写法
12.2.2 使用类和标志链接样式表
12.2.3 创建选择器
12.2.4 应用CSS样式表
12.3 用CSS修饰页面文本
12.3.1 修饰页面文本字体
12.3.2 文本的字号
12.3.3 文本段落的行高
12.3.4 禁止文本自动换行
12.4 给页面对象添加颜色
12.5 CSS3的发展
12.5.1 模块化的发展
12.5.2 浏览器支持情况
12.5.3 CSS3新特性预览
12.6 CSS3增强的选择器功能
12.6.1 属性选择符
12.6.2 结构伪类选择符
12.6.3 UI元素状态伪类选择符
12.6.4 伪元素选择符
12.7 实战:使用CSS制作个人页面
12.8 小结
12.9 本章习题
第13章 文本、背景、边框不再单调
13.1 文本与字体
13.1.1 多样化的文本阴影――text-shadow属性
13.1.2 溢出文本处理――text-overflow属性
13.1.3 对齐的文字才好看――word-wrap和word-break属性
13.1.4 使用服务器端的字体――@font-face规则
13.1.5 实战:丰富的文字样式
13.2 色彩模式和不透明度
13.2.1 还在为配色发愁吗――HSL色彩模式
13.2.2 HSLA色彩模式
13.2.3 RGBA色彩模式
13.2.4 opacity属性
13.2.5 实战:半透明的遮蔽层
13.3 背景
13.3.1 在元素中定义多张背景图片
13.3.2 指定背景的原点位置
13.3.3 指定背景的显示区域
13.3.4 指定背景图像的大小
13.3.5 实战:设计信纸的效果
13.4 边框
13.4.1 设计圆角边框――border-radius属性
13.4.2 设计图像边框――border-image属性
13.4.3 设计多色边框――border-color属性
13.4.4 实战:使用新技术设计网页
13.5 小结
13.6 本章习题
第14章 传统的DIV+CSS设计
14.1 理解块级的意义
14.2 页面中的层
14.2.1 行<span>和层<div>
14.2.2 层的基本定位
14.2.3 层的叠加
14.3 框模型
14.3.1 理解框模型
14.3.2 padding属性
14.3.3 border的扩展属性
14.3.4 margin属性
14.3.5 框模型的溢出
14.4 定制层的display属性
14.5 CSS Hack
14.6 实战:简单的CSS+DIV
14.7 小结
14.8 本章习题
第15章 灵活的盒布局和界面设计
15.1 灵活的盒布局
15.1.1 开启盒布局
15.1.2 元素的布局方向――box-orient属性
15.1.3 元素的布局顺序――box-direction属性
15.1.4 调整元素的位置――box-ordinal-group属性
15.1.5 弹性空间分配――box-flex属性
15.1.6 元素的对齐方式――box-pack属性和box-align属性
15.1.7 实战:使用新型盒布局设计网页
15.2 增强的盒模型
15.2.1 盒子阴影――box-shadow属性
15.2.2 盒子尺寸的计算方法――box-sizing属性
15.2.3 盒子溢出内容处理――overflow-x和overflow-y属性
15.2.4 实战:设计网站服务条款页面
15.3 增强的用户界面设计
15.3.1 允许用户改变尺寸――resize属性
15.3.2 定义外轮廓线――outline属性
15.3.3 伪装的元素――appearance属性
15.3.4 为元素添加内容――content属性
15.3.5 实战:设计一个水果选择盘
15.4 小结
15.5 本章习题
第16章 多列布局
16.1 多列布局基础
16.1.1 多列属性columns
16.1.2 列宽属性column-width
16.1.3 列数属性column-count
16.1.4 列间距属性column-gap
16.1.5 定义列分隔线――column-rule属性
16.1.6 定义横跨所有列――column-span属性
16.2 实战:模仿杂志的多列版式
16.3 小结
16.4 本章习题
第17章 动画和渐变
17.1 CSS3变形基础
17.1.1 元素的变形――transform属性
17.1.2 旋转
17.1.3 缩放和翻转
17.1.4 移动
17.1.5 倾斜
17.1.6 矩阵变形
17.1.7 同时使用多个变形函数
17.1.8 定义变形原点――transform-origin属性
17.1.9 实战:设计图片画廊
17.2 CSS3过渡效果
17.2.1 实现过渡效果――transition属性
17.2.2 指定过渡的属性――transition-property属性
17.2.3 指定过渡的时间――transition-duration属性
17.2.4 指定过渡延迟时间――transition-delay属性
17.2.5 指定过渡方式――transition-timing-function属性
17.2.6 实战:制作滑动的菜单
17.3 CSS3动画设计
17.3.1 关键帧动画――@keyframes规则
17.3.2 动画的实现――animation属性
17.3.3 实战:永不停止的风车
17.4 CSS3渐变设计
17.4.1 CSS线性渐变
17.4.2 CSS径向渐变
17.4.3 实战:设计具有渐变效果的按钮
17.5 小结
17.6 本章习题
第18章 CSS3的跨设备支持
18.1 媒体查询
18.1.1 @media规则的语法
18.1.2 使用Media Queries链接的外部样式表文件
18.2 实战:自适应屏幕的样式表方案
18.3 小结
18.4 本章习题
第19章 案例1:制作主流网站界面
19.1 构思基础的布局
19.2 设计基础模块的样式表
19.3 完善网站的子模块
19.3.1 网站的导航栏
19.3.2 页面的侧栏
19.4 最终页面
19.5 小结
第20章 案例2:设计复杂页面
20.1 页面的框架布局
20.1.1 定位页面的内容
20.1.2 页面初级布局的代码
20.2 细化页面的局部
20.2.1 intro部分
20.2.2 页面的左侧部分
20.2.3 页面的右侧栏主体部分
20.3 小结
第21章 案例3:制作个人网站(HTML5+CSS3)
21.1 网站的整体规划
21.1.1 网站结构规划
21.1.2 页面的功能划分
21.1.3 页面的结构布局
21.2 页面设计效果图
21.3 站点目录规划
21.3.1 规划各种资源目录
21.3.2 配置IIS虚拟目录
21.4 构建HTML结构并用CSS布局
21.5 参照最终的效果图美化页面样式
21.5.1 输入所有的标题和内容
21.5.2 用CSS设置背景图片
21.5.3 用CSS设置渐变背景
21.5.4 用CSS设置页面垂直滚动条样式
21.6 在首页中添加动态行为
21.7 制作日志页面
21.7.1 设计日志浏览功能的思路分析
21.7.2 日志页面的代码编写
21.8 制作相册页面
21.8.1 设计相册浏览功能的思路分析
21.8.2 相册页面的代码编写
21.9 注册域名并发布网站
21.10 小结