21天学通HTML5+CSS3(第2版) 封面

21天学通HTML5+CSS3(第2版)

评分 3.5
字数
18.8万字
章节数
415
ISBN
9787121336317

标签

内容简介

本书全面、系统、深入地讲解了HTML5+CSS3网页设计与编程的基础知识与高级应用。在讲解过程中,通过大量取自实际操作的案例,将网页开发知识全面、系统、深入地呈现给读者。此外,作者专门为本书录制了大量的配套教学视频,让读者通过分析实例、运行实例尽快熟悉网页编程,在学习遇到问题时,也可以作为参考。本书共分21章。第1~11章介绍HTML语言的语法、网页结构,网页中的图像、链接、表单、音频、视频、本地存储等;第12~18章介绍用来美化页面的CSS,包括CSS规则、选择符、盒布局、多列布局、动画、渐变、跨设备支持等;第19~21章通过3 个案例对网页设计的完整流程进行了讲解,帮助读者熟悉如何从大局着手搭建网站。本书在内容上涉及面广,从基本页面结构到HTML5和CSS3增强技术实现及综合案例,涉及目前网页设计与网站搭建的几乎所有技术。本书内容浅显易懂、实例丰富,尤其适合广大网页编程爱好者自学,也适合对网页开发语言感兴趣的读者作为参考书。

编辑推荐

《21天学通HTML5+CSS3(第2版)》是一本面向零基础或初级前端开发者的入门教程。本书以'21天'为学习周期,通过结构化的章节安排,系统性地讲解了HTML5和CSS3的核心知识与实践技能。内容覆盖了从基础标签,语义化元素到Flexbox,Grid布局等现代CSS技术,并涉及响应式设计,媒体查询等必备概念。相较于第一版,第2版更新了部分过时内容,并补充了近年来前端领域的一些新实践。

从编辑的专业视角看,本书的优势在于其清晰的阶梯式学习路径和大量的代码示例,非常适合希望建立系统性知识结构的初学者。作者宋灵香在技术教育领域有一定经验,其叙述风格较为平实,力求将复杂概念简单化。然而,本书的深度对于希望深入理解底层机制或追求前沿框架的读者而言可能略显不足,它更侧重于'学会使用'而非'深入原理'。总体而言,这是一本扎实的'从零到一'的实践指南,能帮助读者快速搭建起静态网页开发的知识骨架,并为后续学习JavaScript或前端框架打下必要基础。

适合谁读

适合

  • 完全没有编程或网页制作基础,希望系统入门的新手
  • 有一定计算机基础,想快速掌握HTML5和CSS3核心技能的转行者
  • 相关专业学生,需要一本结构清晰的教材辅助课堂学习
  • 传统前端开发者,希望快速更新对HTML5和CSS3新特性的认知

不适合

  • 寻求深入解析浏览器渲染原理,性能优化等高级主题的资深开发者
  • 希望直接学习React,Vue等现代前端框架,跳过基础建设的读者

阅读建议

  1. 建议严格按照章节顺序学习,亲手敲写每一个示例代码,理解比记忆更重要
  2. 在学习CSS布局(如Flexbox和Grid)时,可配合在线交互工具进行练习,以加深直观理解
  3. 完成书本练习后,尝试模仿一个简单的实际网站(如个人简介页)进行综合实践,这是检验学习成果的好方法

出版社简介

电子工业出版社 中国 · 成立于 1982 年

电子工业出版社是一家以电子信息及相关领域为出版特色的综合性出版社。从库内三千余种图书来看,其出版方向覆盖编程设计、人工智能、计算机综合、财经、摄影与社科等门类,既关注技术前沿,也兼顾大众阅读。代表图书包括《因子投资:方法与实践》《x86汇编语言:从实模式到保护模式》《RISC-V开放架构设计之道》《人工智能:语音识别理解与实践》《相控阵雷达技术》《雷达目标特性》及《100个Go语言典型错误》等,多围绕技术方法与工程实践展开。作者资源方面,有石川、李忠、王晓波、大卫·帕特森、安德鲁·沃特曼、余子濠等中外作者。受公开资料所限,暂不展开更多出版特色。

目录

  1. 版权信息
  2. 内容简介
  3. 前言
  4. 第1章 了解网页
  5. 1.1 什么是网页
  6. 1.1.1 网页概述
  7. 1.1.2 静态网页
  8. 1.1.3 动态网页
  9. 1.1.4 动态页面和静态页面的联系
  10. 1.1.5 网页浏览器的工作原理
  11. 1.2 HTML和HTML5
  12. 1.2.1 超文本标记语言HTML
  13. 1.2.2 可扩展超文本标记语言XHTML
  14. 1.2.3 HTML5的设计理念
  15. 1.2.4 HTML页面的开发工具
  16. 1.3 实战:编写一个简单的页面(HTML和HTML5)
  17. 1.4 小结
  18. 1.5 本章习题
  19. 第2章 了解HTML网页的结构
  20. 2.1 用记事本打开一个页面
  21. 2.2 HTML基础
  22. 2.2.1 HTML的基础语法
  23. 2.2.2 HTML文档的结构
  24. 2.3 HTML文档中的标签
  25. 2.3.1 样本代码DOCTYPE
  26. 2.3.2 开始标签<html>
  27. 2.3.3 头标签和头标签的对象
  28. 2.3.4 标题标签<title>
  29. 2.3.5 体标签<body>
  30. 2.3.6 美化HTML文档
  31. 2.4 实战:从无到有地设计一个页面
  32. 2.5 小结
  33. 2.6 本章习题
  34. 第3章 网页的文本设计
  35. 3.1 新旧方法对比
  36. 3.2 文本的排版格式
  37. 3.2.1 写一行换一行
  38. 3.2.2 在页面文本中空格
  39. 3.2.3 文本的段落要对齐
  40. 3.3 文本的属性样式
  41. 3.3.1 不一样的文本字体样式
  42. 3.3.2 奇妙的特殊符号
  43. 3.3.3 给文本加标注
  44. 3.4 整齐的文本列表
  45. 3.4.1 无序列表
  46. 3.4.2 有序列表
  47. 3.4.3 定义列表
  48. 3.4.4 列表嵌套
  49. 3.5 实战:制作一则HTML网页版的通知
  50. 3.6 小结
  51. 3.7 本章习题
  52. 第4章 网页中的图像设计
  53. 4.1 图像的基础知识
  54. 4.1.1 最常用的位图图像
  55. 4.1.2 在页面中常用的位图格式
  56. 4.1.3 矢量图
  57. 4.1.4 图像的分辨率
  58. 4.1.5 了解一些网页中常用的Banner尺寸
  59. 4.2 页面中的图像
  60. 4.2.1 理解图像路径
  61. 4.2.2 像设置文本对齐一样在页面中对齐图片
  62. 4.2.3 图像与文本的对齐方式
  63. 4.2.4 控制图像与文本的距离
  64. 4.3 让图像更美观
  65. 4.3.1 使用画图工具修改图像
  66. 4.3.2 给图像添加边框
  67. 4.3.3 独树一帜的水平线
  68. 4.4 改变页面的背景
  69. 4.5 实战:把照片放到网页上
  70. 4.6 小结
  71. 4.7 本章习题
  72. 第5章 网页中的链接
  73. 5.1 网页链接
  74. 5.1.1 初识页面链接
  75. 5.1.2 理解链接地址
  76. 5.2 链接的种种不同
  77. 5.2.1 基本的文本链接
  78. 5.2.2 基本的图像链接
  79. 5.2.3 把邮箱留给需要联系你的人
  80. 5.2.4 在同一页面中快速查找信息
  81. 5.3 提高页面链接的友好度
  82. 5.3.1 美化链接的状态
  83. 5.3.2 特殊的链接方式
  84. 5.3.3 热点图像区域的链接
  85. 5.4 在新窗口中显示链接窗口
  86. 5.5 实战:一个带链接的电影排行榜页面
  87. 5.6 小结
  88. 5.7 本章习题
  89. 第6章 网页中的表单
  90. 6.1 表单的工作原理
  91. 6.1.1 <script>标记
  92. 6.1.2 创建表单
  93. 6.1.3 表单域
  94. 6.2 通过表单展示不一样的页面
  95. 6.2.1 input对象下的多种表单的表现形式
  96. 6.2.2 text:文本框的样式表单
  97. 6.2.3 password:输入密码的样式表单
  98. 6.2.4 checkbox:复选框的样式表单
  99. 6.2.5 radio:单选框的样式表单
  100. 6.2.6 submit:提交数据的样式表单
  101. 6.2.7 hidden:隐藏域的样式表单
  102. 6.2.8 image样式的表单
  103. 6.2.9 file:上传文件的样式表单
  104. 6.2.10 textarea对象的表单
  105. 6.2.11 select对象的表单
  106. 6.2.12 表单域集合
  107. 6.3 HTML5表单的进化
  108. 6.3.1 早期的表单发展
  109. 6.3.2 HTML5表单的出世
  110. 6.3.3 当前的支持情况
  111. 6.3.4 增加的表单输入类型
  112. 6.4 增加表单的特性及元素
  113. 6.4.1 form特性
  114. 6.4.2 formaction特性
  115. 6.4.3 formmethod、formenctype、formnovalidate、formtarget特性
  116. 6.4.4 placeholder特性
  117. 6.4.5 autofocus特性
  118. 6.4.6 autocomplete特性
  119. 6.4.7 list特性和datalist元素
  120. 6.4.8 keygen元素
  121. 6.4.9 output元素
  122. 6.5 表单验证API
  123. 6.5.1 与验证有关的表单元素特性
  124. 6.5.2 表单验证的属性
  125. 6.5.3 ValidityState对象
  126. 6.5.4 表单验证的方法
  127. 6.5.5 表单验证的事件
  128. 6.6 实战:表单构成的HTML页面
  129. 6.7 实战:表单构成的用户注册页面(HTML5)
  130. 6.7.1 案例简介
  131. 6.7.2 页面基本元素
  132. 6.7.3 实现表单验证
  133. 6.7.4 其他处理函数
  134. 6.8 小结
  135. 6.9 习题
  136. 第7章 音频和视频
  137. 7.1 audio和video的基础知识
  138. 7.1.1 在线多媒体的发展
  139. 7.1.2 多媒体术语
  140. 7.1.3 HTML5多媒体文件格式
  141. 7.1.4 功能缺陷及未来趋势
  142. 7.2 使用HTML5的audio和video元素
  143. 7.2.1 在页面中加入音频和视频
  144. 7.2.2 使用source元素
  145. 7.2.3 使用脚本检测浏览器的标签支持情况
  146. 7.2.4 audio和video的特性和属性
  147. 7.2.5 audio和video的接口方法
  148. 7.2.6 audio和video的事件
  149. 7.3 实战:自定义播放工具条
  150. 7.3.1 案例简介
  151. 7.3.2 网页基本元素
  152. 7.3.3 定义全局的视频对象
  153. 7.3.4 添加播放/暂停、前进/后退功能
  154. 7.3.5 添加慢进和快进功能
  155. 7.3.6 添加静音和调节音量的功能
  156. 7.3.7 添加进度显示功能
  157. 7.4 小结
  158. 7.5 本章习题
  159. 第8章 拖放功能
  160. 8.1 拖放API
  161. 8.1.1 draggable特性
  162. 8.1.2 光标拖放事件
  163. 8.1.3 DataTransfer对象
  164. 8.1.4 实战:拖放元素的内容
  165. 8.2 文件API
  166. 8.2.1 增加的标签特性
  167. 8.2.2 FileList对象与File对象
  168. 8.2.3 Blob对象
  169. 8.2.4 FileReader接口
  170. 8.3 实战:把图片拖入浏览器
  171. 8.3.1 案例简介
  172. 8.3.2 设计网页基本元素
  173. 8.3.3 基本函数的实现
  174. 8.3.4 页面加载处理
  175. 8.4 小结
  176. 8.5 本章习题
  177. 第9章 本地存储
  178. 9.1 本地存储对象——Web Storage
  179. 9.1.1 Web Storage简介
  180. 9.1.2 localStorage和sessionStorage
  181. 9.1.3 设置和获取Storage数据
  182. 9.1.4 Storage API的属性和方法
  183. 9.1.5 存储JSON对象的数据
  184. 9.1.6 Storage API的事件
  185. 9.1.7 实战:在两个窗口中实现通信
  186. 9.2 本地数据库——Web SQL Database
  187. 9.2.1 Web SQL Database简介
  188. 9.2.2 操作Web SQL数据库
  189. 9.2.3 实战:基本的数据库操作实例
  190. 9.3 小结
  191. 9.4 本章习题
  192. 第10章 利用Canvas绘制图形
  193. 10.1 认识Canvas
  194. 10.1.1 Canvas的历史
  195. 10.1.2 Canvas与SVG、VML之间的差异
  196. 10.2 Canvas的基本知识
  197. 10.2.1 构建Canvas元素
  198. 10.2.2 使用JavaScript实现绘图的流程
  199. 10.3 使用Canvas绘图
  200. 10.3.1 绘制矩形
  201. 10.3.2 使用路径
  202. 10.3.3 图形组合
  203. 10.3.4 绘制曲线
  204. 10.3.5 使用图像
  205. 10.3.6 剪裁区域
  206. 10.3.7 绘制渐变
  207. 10.3.8 描边属性
  208. 10.3.9 模式
  209. 10.3.10 变换
  210. 10.3.11 使用文本
  211. 10.3.12 阴影效果
  212. 10.3.13 状态的保存与恢复
  213. 10.3.14 操作像素
  214. 10.4 实战:在Canvas中实现动画
  215. 10.5 小结
  216. 10.6 本章习题
  217. 第11章 创建框架结构的页面
  218. 11.1 创建窗口框架页面
  219. 11.1.1 创建窗口框架的<frameset>和<frame>标签
  220. 11.1.2 横向分割窗口
  221. 11.1.3 纵向分割窗口
  222. 11.1.4 框架的嵌套
  223. 11.1.5 将页面放入窗口框架中
  224. 11.2 修饰框架的细节
  225. 11.2.1 给无法处理框架的浏览器注释说明
  226. 11.2.2 固定框架的位置
  227. 11.2.3 在框架中设置滚动条
  228. 11.3 修改框架边框的样式
  229. 11.3.1 判定边框是否显示
  230. 11.3.2 改变边框的表现效果
  231. 11.3.3 边框的边距
  232. 11.4 框架集中页面之间的链接
  233. 11.4.1 在指定的框架中打开链接
  234. 11.4.2 框架内的锚点链接
  235. 11.5 灵活的<iframe>框架
  236. 11.6 实战:制作自己的链接主页
  237. 11.7 小结
  238. 11.8 本章习题
  239. 第12章 CSS规则
  240. 12.1 如何学习CSS
  241. 12.2 CSS基本的规则写法
  242. 12.2.1 基本的样式表的写法
  243. 12.2.2 使用类和标志链接样式表
  244. 12.2.3 创建选择器
  245. 12.2.4 应用CSS样式表
  246. 12.3 用CSS修饰页面文本
  247. 12.3.1 修饰页面文本字体
  248. 12.3.2 文本的字号
  249. 12.3.3 文本段落的行高
  250. 12.3.4 禁止文本自动换行
  251. 12.4 给页面对象添加颜色
  252. 12.5 CSS3的发展
  253. 12.5.1 模块化的发展
  254. 12.5.2 浏览器支持情况
  255. 12.5.3 CSS3新特性预览
  256. 12.6 CSS3增强的选择器功能
  257. 12.6.1 属性选择符
  258. 12.6.2 结构伪类选择符
  259. 12.6.3 UI元素状态伪类选择符
  260. 12.6.4 伪元素选择符
  261. 12.7 实战:使用CSS制作个人页面
  262. 12.8 小结
  263. 12.9 本章习题
  264. 第13章 文本、背景、边框不再单调
  265. 13.1 文本与字体
  266. 13.1.1 多样化的文本阴影——text-shadow属性
  267. 13.1.2 溢出文本处理——text-overflow属性
  268. 13.1.3 对齐的文字才好看——word-wrap和word-break属性
  269. 13.1.4 使用服务器端的字体——@font-face规则
  270. 13.1.5 实战:丰富的文字样式
  271. 13.2 色彩模式和不透明度
  272. 13.2.1 还在为配色发愁吗——HSL色彩模式
  273. 13.2.2 HSLA色彩模式
  274. 13.2.3 RGBA色彩模式
  275. 13.2.4 opacity属性
  276. 13.2.5 实战:半透明的遮蔽层
  277. 13.3 背景
  278. 13.3.1 在元素中定义多张背景图片
  279. 13.3.2 指定背景的原点位置
  280. 13.3.3 指定背景的显示区域
  281. 13.3.4 指定背景图像的大小
  282. 13.3.5 实战:设计信纸的效果
  283. 13.4 边框
  284. 13.4.1 设计圆角边框——border-radius属性
  285. 13.4.2 设计图像边框——border-image属性
  286. 13.4.3 设计多色边框——border-color属性
  287. 13.4.4 实战:使用新技术设计网页
  288. 13.5 小结
  289. 13.6 本章习题
  290. 第14章 传统的DIV+CSS设计
  291. 14.1 理解块级的意义
  292. 14.2 页面中的层
  293. 14.2.1 行<span>和层<div>
  294. 14.2.2 层的基本定位
  295. 14.2.3 层的叠加
  296. 14.3 框模型
  297. 14.3.1 理解框模型
  298. 14.3.2 padding属性
  299. 14.3.3 border的扩展属性
  300. 14.3.4 margin属性
  301. 14.3.5 框模型的溢出
  302. 14.4 定制层的display属性
  303. 14.5 CSS Hack
  304. 14.6 实战:简单的CSS+DIV
  305. 14.7 小结
  306. 14.8 本章习题
  307. 第15章 灵活的盒布局和界面设计
  308. 15.1 灵活的盒布局
  309. 15.1.1 开启盒布局
  310. 15.1.2 元素的布局方向——box-orient属性
  311. 15.1.3 元素的布局顺序——box-direction属性
  312. 15.1.4 调整元素的位置——box-ordinal-group属性
  313. 15.1.5 弹性空间分配——box-flex属性
  314. 15.1.6 元素的对齐方式——box-pack属性和box-align属性
  315. 15.1.7 实战:使用新型盒布局设计网页
  316. 15.2 增强的盒模型
  317. 15.2.1 盒子阴影——box-shadow属性
  318. 15.2.2 盒子尺寸的计算方法——box-sizing属性
  319. 15.2.3 盒子溢出内容处理——overflow-x和overflow-y属性
  320. 15.2.4 实战:设计网站服务条款页面
  321. 15.3 增强的用户界面设计
  322. 15.3.1 允许用户改变尺寸——resize属性
  323. 15.3.2 定义外轮廓线——outline属性
  324. 15.3.3 伪装的元素——appearance属性
  325. 15.3.4 为元素添加内容——content属性
  326. 15.3.5 实战:设计一个水果选择盘
  327. 15.4 小结
  328. 15.5 本章习题
  329. 第16章 多列布局
  330. 16.1 多列布局基础
  331. 16.1.1 多列属性columns
  332. 16.1.2 列宽属性column-width
  333. 16.1.3 列数属性column-count
  334. 16.1.4 列间距属性column-gap
  335. 16.1.5 定义列分隔线——column-rule属性
  336. 16.1.6 定义横跨所有列——column-span属性
  337. 16.2 实战:模仿杂志的多列版式
  338. 16.3 小结
  339. 16.4 本章习题
  340. 第17章 动画和渐变
  341. 17.1 CSS3变形基础
  342. 17.1.1 元素的变形——transform属性
  343. 17.1.2 旋转
  344. 17.1.3 缩放和翻转
  345. 17.1.4 移动
  346. 17.1.5 倾斜
  347. 17.1.6 矩阵变形
  348. 17.1.7 同时使用多个变形函数
  349. 17.1.8 定义变形原点——transform-origin属性
  350. 17.1.9 实战:设计图片画廊
  351. 17.2 CSS3过渡效果
  352. 17.2.1 实现过渡效果——transition属性
  353. 17.2.2 指定过渡的属性——transition-property属性
  354. 17.2.3 指定过渡的时间——transition-duration属性
  355. 17.2.4 指定过渡延迟时间——transition-delay属性
  356. 17.2.5 指定过渡方式——transition-timing-function属性
  357. 17.2.6 实战:制作滑动的菜单
  358. 17.3 CSS3动画设计
  359. 17.3.1 关键帧动画——@keyframes规则
  360. 17.3.2 动画的实现——animation属性
  361. 17.3.3 实战:永不停止的风车
  362. 17.4 CSS3渐变设计
  363. 17.4.1 CSS线性渐变
  364. 17.4.2 CSS径向渐变
  365. 17.4.3 实战:设计具有渐变效果的按钮
  366. 17.5 小结
  367. 17.6 本章习题
  368. 第18章 CSS3的跨设备支持
  369. 18.1 媒体查询
  370. 18.1.1@media规则的语法
  371. 18.1.2 使用Media Query链接的外部样式表文件
  372. 18.2 实战:自适应屏幕的样式表方案
  373. 18.3 小结
  374. 18.4 本章习题
  375. 第19章 案例1:制作主流网站界面
  376. 19.1 构思基础的布局
  377. 19.2 设计基础模块的样式表
  378. 19.3 完善网站的子模块
  379. 19.3.1 网站的导航栏
  380. 19.3.2 页面的侧栏
  381. 19.4 最终页面
  382. 19.5 小结
  383. 第20章 案例2:设计复杂页面
  384. 20.1 页面的框架布局
  385. 20.1.1 定位页面的内容
  386. 20.1.2 页面初级布局的代码
  387. 20.2 细化页面的局部
  388. 20.2.1 intro部分
  389. 20.2.2 页面的左侧部分
  390. 20.2.3 页面的右侧栏主体部分
  391. 20.3 小结
  392. 第21章 案例3:制作个人网站(HTML5+CSS3)
  393. 21.1 网站的整体规划
  394. 21.1.1 网站结构规划
  395. 21.1.2 页面的功能划分
  396. 21.1.3 页面的结构布局
  397. 21.2 页面设计效果图
  398. 21.3 站点目录规划
  399. 21.3.1 规划各种资源目录
  400. 21.3.2 配置IIS虚拟目录
  401. 21.4 构建HTML结构并用CSS布局
  402. 21.5 参照最终的效果图美化页面样式
  403. 21.5.1 输入所有的标题和内容
  404. 21.5.2 用CSS设置背景图片
  405. 21.5.3 用CSS设置渐变背景
  406. 21.5.4 用CSS设置页面垂直滚动条样式
  407. 21.6 在首页中添加动态行为
  408. 21.7 制作日志页面
  409. 21.7.1 设计日志浏览功能的思路分析
  410. 21.7.2 日志页面的代码编写
  411. 21.8 制作相册页面
  412. 21.8.1 设计相册浏览功能的思路分析
  413. 21.8.2 相册页面的代码编写
  414. 21.9 注册域名并发布网站
  415. 21.10 小结

常见问题

这本书需要读者有编程基础吗?
不需要。本书从最基础的网页结构概念讲起,假设读者从零开始,适合完全没有编程经验的初学者。
学完这本书能达到什么水平?
学完后,读者应能独立使用HTML5和CSS3构建具有现代布局和响应式特性的静态网站,具备进入前端开发下一阶段(如学习JavaScript)的坚实基础。
书中的代码示例和项目是否过时?
作为第2版,本书已对HTML5和CSS3的主流及稳定特性进行了更新。代码示例注重展示核心概念,在当前主流浏览器中均可正常运行,具有较高的学习参考价值。

微信读书相关

读者评论

查询本书

本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。

作者简介

宋灵香 作者

宋灵香是一位目前公开资料有限的编程类图书作者,库内收录其作品一种,即《21天学通HTML5+CSS3(第2版)》。从这一代表作品来看,其写作方向集中于前端网页开发的基础入门领域,围绕HTML5与CSS3两项核心技术展开,采用分阶段、按天推进的编排方式,帮助初学者在较短周期内建立对网页结构与样式的基本认识。该书属于编程设计分类下的入门读物,面向零基础或初学读者,内容组织强调循序渐进与可操作性。由于作者本人的国籍、生卒年、教育背景与职业经历等信息均未见明确记载,本简介不作推测,仅依据库内作品信息勾勒其写作侧重,即服务于前端技术普及与入门教学。

同类高分