W3C于2016年11月1日正式了HTML 5.1规范,该规范已经得到广大浏览器厂商的支持,主流的版本的浏览器几乎都支持该规范。与此同时,前端开发的持续火爆,使得HTML 5成为目前的热门领域。本书是一本介绍HTML 5、CSS 3和JavaScript前端开发技术的图书,系统地介绍了HTML 5常用的元素和属性、HTML 5的表单元素和属性、HTML 5的绘图支持、HTML 5的多媒体支持、CSS 3的功能和用法、前沿的变形与动画功能等。除此之外,本书还系统地介绍了JavaScript编程知识,包括JavaScript基本语法、DOM编程,以及HTML 5新增的本地存储、Indexed数据库、离线应用、JavaScript多线程、客户端通信支持、WebSocket编程等。本书的定位是一本前端开发的“实战性”图书,因此在介绍各知识点时并不是简单地停留在知识点层面阐述,而是结合了大量实例来让读者对照练习、学以致用。本书后还提供了一个基于HTML 5技术的小游戏:疯狂俄罗斯方块。该游戏综合运用了HTML 5的绘图支持、客户端存储等技术,具有较高的参考价值。本书提供了配套的答疑网站,如果读者在阅读本书时遇到了技术问题,可以登录疯狂Java联盟(www.crazyit.org)发帖,笔者将会及时予以解答。
《疯狂 HTML 5 CSS 3 JavaScript讲义(第2版)》由知名IT作家李刚老师创作
本书的中文繁体字版授权到中国台湾地区
全书面向HTML 5.1规范正式版,更新多个元素、拖放规范的相关知识,新增外挂字幕、点线模式等内容,着重介绍新增的手机端相关特性
详细介绍渐变背景支持、弹性盒布局、手机浏览器响应式布局、3D变换等CSS新增特性及重大改进
李刚,十余年软件开发从业经验,疯狂软件教育中心教学总监。疯狂Java实训营创始人,疯狂Java体系原创图书作者。广东技术师范学院计算机科学系兼职副教授,51CTO专家门诊特邀嘉宾。培训的学生已在华为、IBM、阿里软件、网易、电信盈科等名企就职。国内知名高端IT技术图书作家,已出版《疯狂Java讲义》《疯狂Android讲义》《轻量级JavaEE企业应用实战》《疯狂iOS讲义(基础篇)(提高篇)》《疯狂前端开发讲义》《疯狂HTML5/CSS3/JavaScript讲义》《疯狂XML讲义》《经典JavaEE企业应用实战》《Struts2。x专业指南》等著作。其中疯狂Java体系图书均已沉淀多年,赢得极高的市场认同,多次重印,多部著作印刷数量超过10万册,并被多所“985”“211”院校选作教材,部分图书已被翻译成繁体中文版,授权到中国台湾地区。
第1章HTML 5简介 1
1.1HTML历史与HTML 5 2
1.1.1HTML发展历史 2
1.1.2HTML 4.01和XHTML 3
1.1.3HTML和XHTML的文档类型定义(DTD) 4
1.1.4从XHTML到HTML 5 5
1.2HTML 5的优势 6
1.2.1解决跨浏览器问题 6
1.2.2部分代替了原来的JavaScript 6
1.2.3更明确的语义支持 7
1.2.4增强了Web应用程序的功能 8
1.3HTML 5的基本结构和语法变化 8
1.3.1HTML 5的基本结构 8
1.3.2标签不再区分大小写 9
1.3.3元素可以省略结束标签 10
1.3.4支持boolean值的属性 11
1.3.5允许属性值不使用引号 12
1.4本章小结 12
第2章HTML 5的常用元素与属性 14
2.1HTML 5保留的常用元素 15
2.1.1基本元素 15
2.1.2文本格式相关元素 17
2.1.3语义相关元素 19
2.1.4使用a元素添加超链接和锚点 21
2.1.5列表相关元素 24
2.1.6使用img元素添加图片 27
2.1.7表格相关元素 30
2.2HTML 5增强的iframe元素 34
2.2.1HTML 5新增的srcdoc属性 35
2.2.2HTML 5新增的seamless属性 36
2.2.3HTML 5新增的sandbox属性 36
2.3HTML 5保留的通用属性 40
2.3.1id、style、class属性 40
2.3.2dir属性 41
2.3.3title属性 42
2.3.4lang属性 43
2.3.5accesskey属性 43
2.3.6tabindex属性 43
2.4HTML 5新增的通用属性 44
2.4.1contentEditable属性 44
2.4.2designMode属性 46
2.4.3hidden属性 46
2.4.4spellcheck属性 47
2.4.5contextmenu属性 47
2.5HTML 5新增的结构元素 48
2.5.1article与section元素 48
2.5.2header与footer元素 51
2.5.3nav与aside元素 52
2.5.4main元素 53
2.5.5figure与figcaption元素 54
2.6HTML 5新增的语义元素 55
2.6.1mark元素 55
2.6.2time元素 56
2.6.3details与summary元素 56
2.6.4ruby、rtc、rb、rt和rp元素 57
2.6.5bdi元素 58
2.6.6wbr元素 58
2.6.7menu和menuitem元素 59
2.7HTML 5头部和元信息 59
2.7.1link元素 60
2.7.2base元素 62
2.7.3meta元素 62
2.8HTML 5新增的拖放API 63
2.8.1启动拖动 63
2.8.2接受“放” 65
2.8.3DataTransfer对象 67
2.8.4拖放行为 69
2.8.5改变拖放图标 70
2.9本章小结 71
第3章HTML 5表单相关的元素和属性 72
3.1HTML原有的表单及表单控件 73
3.1.1form元素 73
3.1.2input元素 74
3.1.3使用label定义标签 77
3.1.4使用button定义按钮 78
3.1.5select与option元素 79
3.1.6HTML 5增强的textarea 80
3.1.7fieldset与legend元素 82
3.2HTML 5新增的表单属性 83
3.2.1form属性 83
3.2.2formaction属性 83
3.2.3formxxx属性 84
3.2.4autofocus属性 85
3.2.5placeholder属性 85
3.2.6list属性 86
3.2.7autocomplete属性 87
3.2.8label的control属性 88
3.2.9表单元素的labels属性 88
3.2.10文本框的selectionDirection属性 89
3.2.11复选框的indeterminate属性 89
3.3HTML 5新增的表单元素 90
3.3.1功能丰富的input元素 90
3.3.2output元素 93
3.3.3meter元素 94
3.3.4progress元素 95
3.3.5keygen元素 95
3.4HTML 5新增的客户端校验 96
3.4.1使用校验属性执行校验 96
3.4.2调用checkValidity方法进行校验 97
3.4.3自定义错误提示 98
3.4.4关闭校验 99
3.5本章小结 100
第4章HTML 5的绘图支持 101
4.1使用canvas元素 102
4.2绘图 103
4.2.1canvas绘图基础:CanvasRenderingContext2D 103
4.2.2绘制几何图形 105
4.2.3点线模式 107
4.2.4绘制字符串 109
4.2.5设置阴影 110
4.2.6使用路径 111
4.2.7绘制曲线 115
4.2.8绘制位图 117
4.3坐标变换 118
4.3.1使用坐标变换 118
4.3.2坐标变换与路径结合使用 119
4.3.3使用矩阵变换 121
4.4控制叠加风格 123
4.5控制填充风格 124
4.5.1线性渐变 124
4.5.2径向渐变 126
4.5.3位图填充 127
4.6位图处理 128
4.6.1位图裁剪 128
4.6.2像素处理 129
4.7输出位图 132
4.8动画制作 133
4.8.1基于定时器的动画 133
4.8.2基于requestAnimationFrame的动画 135
4.9本章小结 136
第5章HTML 5的多媒体支持 137
5.1使用audio和video元素 138
5.2使用JavaScript脚本控制媒体播放 141
5.2.1HTMLAudioElement与HTMLVideoElement支持的方法 141
5.2.2HTMLAudioElement与HTMLVideoElement的属性 143
5.3事件监听 144
5.3.1事件 144
5.3.2监听器 145
5.4track元素 146
5.4.1使用track元素添加字幕 146
5.4.2WebVTT文件简介 147
5.4.3字幕内容的标记 148
5.5本章小结 149
第6章级联样式单与CSS选择器 150
6.1样式单概述 151
6.1.1CSS概述 151
6.1.2CSS的发展历史 152
6.2CSS样式单的基本使用 152
6.2.1引入外部样式文件 152
6.2.2导入外部样式单 154
6.2.3使用内部CSS样式 155
6.2.4使用行内样式 156
6.3CSS选择器 158
6.3.1元素选择器 158
6.3.2属性选择器 159
6.3.3ID选择器 161
6.3.4class选择器 162
6.3.5包含选择器 163
6.3.6子选择器 164
6.3.7CSS 3新增的兄弟选择器 165
6.3.8选择器组合 166
6.4伪元素选择器 167
6.4.1内容相关的属性 169
6.4.2插入图像 170
6.4.3只插入部分元素 171
6.4.4配合quotes属性执行插入 171
6.4.5配合counter-increment属性添加编号 172
6.4.6使用自定义编号 173
6.4.7添加多级编号 174
6.5CSS 3新增的伪类选择器 176
6.5.1结构性伪类选择器 176
6.5.2UI元素状态伪类选择器 186
6.5.3:target伪类选择器 193
6.5.4:not伪类选择器 194
6.6在脚本中修改显示样式 195
6.6.1随机改变页面的背景色 195
6.6.2动态增加立体效果 196
6.7本章小结 197
第7章字体与文本相关属性 198
7.1字体相关属性 199
7.1.1使用text-shadow添加阴影 201
7.1.2添加多个阴影 202
7.1.3使用font-size-adjust属性微调字体大小 203
7.2CSS 3支持的颜色表示方法 205
7.3文本相关属性 206
7.3.1使用white-space控制空白的处理行为 208
7.3.2文本自动换行:word-break 209
7.3.3用word-warp控制长单词或URL地址换行 210
7.4CSS 3新增的服务器字体 212
7.4.1使用服务器字体 212
7.4.2定义粗体、斜体字 213
7.4.3优先使用客户端字体 214
7.5本章小结 215
第8章背景、边框和边距相关属性 216
8.1盒模型简介 217
8.2背景相关属性 217
8.2.1背景图片固定 219
8.2.2CSS 3新增的background-clip属性 220
8.2.3CSS 3新增的background-origin属性 221
8.2.4CSS 3新增的background-size属性 222
8.2.5CSS 3为background-repeat新增的space和round 224
8.2.6CSS 3新增的多背景图片 225
8.3使用渐变背景 226
8.3.1使用linear-gradient设置线性渐变 226
8.3.2使用repeating-linear-gradient设置循环线性渐变 230
8.3.3使用radial-gradient设置径向渐变 231
8.3.4使用repeating-radial-gradient设置循环径向渐变 238
8.4边框相关属性 239
8.4.1CSS 3提供的渐变边框 241
8.4.2CSS 3提供的圆角边框 242
8.4.3CSS 3提供的图片边框 244
8.5使用opacity控制透明度 246
8.6padding和margin相关属性 247
8.6.1内填充相关属性 247
8.6.2外边距相关属性 248
8.7本章小结 249
第9章大小、定位、轮廓相关属性 250
9.1width、height相关属性 251
9.1.1CSS 3新增的box-sizing属性 252
9.1.2CSS 3新增的resize属性 253
9.1.3CSS 3新增的calc函数 254
9.2定位相关属性 255
9.3轮廓相关属性 257
9.4用户界面和滤镜属性 258
9.4.1appearance属性 259
9.4.2使用filter属性应用滤镜 260
9.5本章小结 263
第10章盒模型与布局相关属性 264
10.1盒模型和display属性 265
10.1.1两种最基本的盒类型 265
10.1.2none值和visibility属性 267
10.1.3inline-block类型的盒模型 267
10.1.4inline-table类型的盒模型 270
10.1.5使用table类型的盒模型实现表格 271
10.1.6list-item类型的盒模型 272
10.1.7run-in类型的盒模型 273
10.2对盒添加阴影 275
10.2.1使用box-shadow属性 275
10.2.2对表格及单元格添加阴影 277
10.3布局相关属性 278
10.3.1通过float属性实现多栏布局 279
10.3.2使用clear属性实现换行 280
10.3.3使用overflow设置滚动条 282
10.3.4使用overflow-style控制滚动方式 283
10.3.5使用clip属性控制裁剪 284
10.4CSS 3新增的多栏布局 285
10.4.1使用column-width指定栏宽度 286
10.4.2使用column-gap和column-rule控制分栏间隔 287
10.4.3使用column-span设置跨栏 288
10.5使用弹性盒布局 289
10.5.1使用flex类型的盒模型 290
10.5.2通过flex-direction指定盒内元素的排列方向 291
10.5.3使用flex-wrap控制换行 293
10.5.4使用order控制元素显示顺序 294
10.5.5使用flex属性控制子元素的缩放 295
10.5.6使用align-items和ali
快递很快,书看了一下,挺不错,这个系列的买了挺多本的,延续了一贯风格
这本书介绍的很详细,想了解前端开发的话,这是一本参考价值高的书
html5css3javascript的技术,很适合前端开发得看
很不错 我一口气买了三本 200减100 赚到了
老师讲得很详细,知识点很细。书的印刷不是很好,看起来很吃力
居然用塑料袋子装的,光盘夹在书中,收到的时候已经断裂,希望可以从网上能下载到光盘资料
疯狂系列的书都很不错,是国内目前比较好的IT书籍
这本书很好, 昨天刚入手今天就到了。 学习ing...
这本书主要是入门级,从标签和CSS开讲,却没有多少涉及到HTML5的知识,对于刚开始学习的朋友来说是一本不错的书,但是如果对于需要进阶的朋友来说这本书还是不推荐了。
支持李刚老师的图书~~不可多得的入门级图书~
正品书,不知道是快递运送还是书本身有破损,希望店家叮嘱一下快递老板保证书安全无损送达。
挺全的讲解的,先看完html和CSS再看这本
评价晚了,双十一拍的第二天就收到了,还没开始看,感觉还不错
商品是正版,纸质很好,内容更好,非常适合初学者使用,老师要求把这本书完全看会了,再加上自己努力练习,是对网站开发与设计很有帮助的书籍。
书还没有看完,适用于初学者,对于个人有此基础而言还不是我想要的书。可否有IT行业人士推荐此类书更有技术含量深入的请留言回复,谢谢。
物流速度很快,第二天中午就到了,书里要背的东西很多。
真的只是讲html5,要有html基础的人看才行,一点基础没有的,说实话,我觉得不太适合。
刚买到的书整体感觉还好书的内容以后再分享
这本书还可以,不算太差,内容很好,包装精美,相信当当网,必须好评。
书很好,卖家及当当对快递的管理差一些,快递有两天联系不上,客服人员无法做出解释,影响客户使用,影响当当网信誉
东西还行,就没有折扣,这快递员是不有点蒙逼呀!为什么我的支付宝不能用啊,我他妈没钱了呀, 这快递员牛逼死啦
非常满意 下大雨就给送来了 出货也很快 书还没有看
翻开书的封面,就有张疯狂jave学习路线图清晰呈现,这里多少感觉到贴心,最起码为大家提供了一个方向或者说指引,虽然不一定对我有用,但感觉对进修或想系统学习的人挺好的,其他的话,简单翻了翻,听朴素额,都是黑白文字叙述,希望如作者说的简单易懂
物流很快,昨天买的今天就到了,只是包装破损非常大,,书籍侧面被弄脏了,快递人员未做任何说明,往快递柜里一放就完了。而且,不知道谁替我点的确认收货。很不舒服的一次购买。
非常好的一本书!对html5+javascript有很详尽的解析。这本书则让人读后茅塞顿开。当然,要想深入挖掘html5的特性,还需要其它的辅助资源,但是,用这本书作为开始,已经很不错。
为什么给4分呢?因为李刚的书我买了一整套了,从第一本疯狂JAVA讲义第一版到疯狂XML到疯狂Android到程序员基本功到疯狂AJAX到疯狂HTML5/CSS3/JavaScript....这本个人感觉不可作为经典之作了..