《写给Web开发人员看的HTML5教程》通过结合大量实际案例和源代码对HTML5的重要特性进行了详细讲解,内容全面丰富,易于理解。全书共分为12章,从HTML5的历史故事讲起,涉及了文档结构和语义、智能表单、视频与音频、画布、SVG与MathML、地理定位、Web存储与离线Web应用程序、WebSockets套接字、Web Worker多线程、微数据以及以拖曳为代表的一些全局属性,涵盖了HTML5所有的重要特性。此外,《写给Web开发人员看的HTML5教程》还提供了大量的案例源代码,供读者在学习过程中参考,帮助读者提升HTML5的实际应用技能。 《写给Web开发人员看的HTML5教程》适合具有一定的HTML和JavaScript基础的Web开发人员阅读。
目录
- 第1章Web标准概述
- 1.1HTML5诞生始末
- 1.2重大历史事件回顾
- 1.3拣重要的说
- 1.3.1有什么新特色?
- 1.3.2去掉了什么?
- 1.3.3XHTML呢?
- 1.4现在我可以开始使用HTML5了吗?
- 小结
- 第2章文档结构和语义
- 2.1页眉的header和hgroup标签
- 2.2正文(article)内容
- 2.3由footer和nav组成的页脚
- 2.4由aside及section组成的工具栏
- 2.5大纲算法
- 2.6图形中的figure及figcaption
- 2.7文档级别语义--更多新的标签
- 2.7.1元素ruby、rt及rp
- 2.7.2time元素
- 2.7.3mark元素
- 2.7.4wbr元素
- 2.7.5略微改变的元素
- 小结
- 第3章智能表单
- 3.1新的输入类型(input type)
- 3.1.1输入类型tel及search
- 3.1.2输入类型url及email
- 3.1.3用datetime,date,month,week,time以及datetime-local表示日期和时间
- 3.1.4输入类型number及range
- 3.1.5输入类型color
- 3.1.6新输入类型的实际应用
- 3.2有用的表单属性
- 3.2.1使用autofocus操作焦点
- 3.2.2为文本使用placeholder占位符
- 3.2.3使用required定义必填项
- 3.2.4input元素中的更多属性
- 3.3新的元素
- 3.3.1使用meter显示度量
- 3.3.2用progress显示任务进程
- 3.3.3datalist选项列表
- 3.3.4使用keygen处理密钥
- 3.3.5用output进行计算
- 3.4客户端表单验证
- 3.4.1invalid事件
- 3.4.2checkValidity函数
- 3.4.3使用setCustomValidity()进行错误处理
- 3.4.4有效性验证总结
- 3.4.5不做有效性验证也许更好?“formnovalidate”
- 3.5案例:一张维修表单
- 小结
- 第4章视频与音频
- 4.1第一个案例
- 4.2video元素及其属性
- 4.3视频编解码器
- 4.3.1Ogg:Theora与Vorbis
- 4.3.2MPEG-4:H.264与AAC
- 4.3.3WebM:VP8与Vorbis
- 4.4视频转换工具
- 4.4.1FFmpeg
- 4.4.2VLC
- 4.4.3Firefogg
- 4.4.4Miro Video Converter
- 4.5各种浏览器支持些什么格式
- 4.6旧浏览器的过渡解决方案
- 4.6.1mwEmbed
- 4.6.2html5media
- 4.7视频与脚本--简单的视频播放器
- 4.7.1视频整合
- 4.7.2播放和暂停视频
- 4.7.3显示及设定播放位置
- 4.7.4快进和后退
- 4.7.5选择电影场景
- 4.7.6音量调节及静音
- 4.7.8HTMLMediaElement接口中其他的属性及方法
- 4.7.9媒体事件列表
- 4.8关于音频
- 小结
- 第5章画布
- 5.1案例
- 5.2矩形
- 5.3颜色及阴影
- 5.4渐变
- 5.5路径绘图
- 5.5.1线条
- 5.5.2Bézier曲线
- 5.5.3弧线
- 5.5.4矩形
- 5.5.5轮廓、填充及剪切遮罩
- 5.6文本
- 5.6.1字体
- 5.6.2水平锚点
- 5.6.3垂直锚点
- 5.6.4绘制及测量文本
- 5.7内嵌图像
- 5.8像素处理
- 5.8.1使用ImageData对象
- 5.8.2使用getImageData()、createImageData()及putImageData()进行颜色处理
- 5.9混合(Compositing)
- 5.10图案(Pattern)
- 5.11变换(Transformations)
- 5.12用canvas.toDataURL()进行Base64编码
- 5.13save()与restore()
- 5.14动画
- 5.14.1彩色球体动画
- 5.14.2用drawImage()播放视频
- 5.15还有遗漏吗?
- 5.15.1isPointInPath(x, y)
- 5.15.2Canvas的可访问性?
- 5.15.3安全方面
- 5.15.4浏览器支持
- 5.15.5更多链接
- 小结
- 第6章SVG与MathML
- 6.1MathML
- 6.2SVG
- 小结
- 第7章地理定位
- 7.1地理定位介绍
- 7.1.1地理数据
- 7.1.2在线地图服务
- 7.2初体验:在浏览器中使用地理定位
- 7.3定位的技术背景
- 7.4OpenStreetMap上显示当前位置
- 7.5使用GoogleMaps追踪位置
- 7.6案例:Geonotes
- 7.6.1操作
- 7.6.2重要的代码片断
- 7.7浏览器支持
- 小结
- 第8章Web存储及离线Web应用程序
- 8.1存储
- 8.1.1Storage接口
- 8.1.2会话存储(sessionStorage)
- 8.1.3本地存储(localStorage)
- 8.1.4storage事件
- 8.1.5调试
- 8.2离线Web应用程序
- 8.2.1缓存清单文件
- 8.2.2离线状态及事件
- 8.2.3调试
- 8.3浏览器支持
- 8.4案例: Click to tick!
- 8.4.1用户界面
- 8.4.2管理界面
- 8.4.3重要代码片段
- 8.4.4扩展选项
- 小结
- 第9章网页套接字
- 9.1WebSocket服务器
- 9.2案例:广播服务器
- 9.2.1广播客户端
- 9.2.2广播服务器
- 9.3案例:Battleships!(战列舰)
- 小结
- 第10章多线程
- 10.1Web Worker介绍
- 10.2查找闰年
- 10.3配合Canvans计算海拔档案
- 10.3.1重要代码清单
- 小结
- 第11章微数据
- 11.1微数据语法
- 11.1.1属性itemscope及itemprop
- 11.1.2itemtype属性
- 11.1.3itemid属性
- 11.1.4itemref属性
- 11.2微数据DOM API
- 小结
- 第12章写在最后:一些全局属性
- 12.1class属性的变化
- 12.2用“data-*”定义自定义属性
- 12.3hidden属性
- 12.4classList接口
- 12.5通过draggable属性实现拖曳
- 12.5.1拖曳与FileAPI相结合
- 12.6属性contenteditable与spellcheck
- 小结
-
后记