基本信息出版社:人民邮电出版社
页码:364 页
出版日期:2009年06月
ISBN:7115204063/9787115204066
条形码:9787115204066
版本:第4版
装帧:平装
开本:16
正文语种:中文
内容简介 HTML是Internet的基石。《HTML、XHTML和CSS宝典(第4版)》介绍了HTML的基础知识,包括构成HTML语言的标签、属性以及结构,有助于编写文档、验证文档和对文档进行除错的工具。接着介绍了CSS的基础知识、CSS选择器的语法、正确的属性和属性值,以及如何运用CSS属性有效地对文档的各个部分进行格式化。最后介绍了一些附加的CSS主题,包括高级布局、用户界面样式、测试和验证CSS,以及应用CSS的提示和技巧。全书不仅介绍了原理,而且列举了大量的实例,不仅适用于刚刚接触HTML和Web内容的读者,也适用于各种相关领域的专业人员阅读。
作者简介 谢弗(Steven M.Schafer),Linux、开源技术和开放标准的提倡者。他曾任Free Standards Group的认证和开发总监,目前在一家从事Linux开发的软件公司担任CTO,这家公司从事基于Linux和开源技术的企业级软件开发和服务。Steven精通多种编程语言,包括PHP、Java、JavaScript、C语言和脚本编程,还精通HTML和CSS这些Web技术。他是多部图书的作者,涉及的范围从游戏策略手册,到关于HTML、CSS、JavaScript和LAMP等各种技术图书。
编辑推荐 学会正确的语言,Web尽在掌握:解密万维网(WWW)世界的密码,运用正确的工具,征服WWW。《HTML、XHTML和CSS宝典(第4版)》全面揭示了超文本标记语言(HTML)和层级样式表(CSS)的秘密,掌握了这些秘诀,就能创建专业级的交互式网页,创建强大的应用程序,并能用各种方式随心所欲地与Web进行交互。《HTML、XHTML和CSS宝典(第4版)》介绍了如何为拥有浏览器的众多移动设备编写酷炫的内容。除此之外,《HTML、XHTML和CSS宝典(第4版)》还介绍了各种实践性级强的工具、提示和技巧。
深入掌握所有网页的底层结构;学习文本结构、元标签、链接以及其他方面的基础知识;编写脚本、掌握动态HTML,以及使用CSS编辑工具;用XHTML Basic创建用于移动设备的网页;用微格式强化Web 2.0的新功能;在网页上添加颜色、背景、多媒体和交互性;清理、测试、验证网页代码。
目录
第1部分 用HTML建立内容.
第1章 什么是标记语言,为什么要关注它 3
1.1 本书主题 3
1.2 理解超文本 4
1.3 理解标记指令 4
1.4 理解标记语言 5
1.5 小结 6
第2章 HTML值和单位 7
2.1 基本的标签属性格式 7
2.2 公共属性 8
2.3 文本和注释 9
2.3.1 注释 9
2.3.2 CDATA区 10
2.4 统一资源指示器 10
2.5 语言和国际化选项 10
2.5.1 语言代码 10
2.5.2 文本方向 11
2.6 小结 11
第3章 Web文档的构成 12
3.1 指定文档类型 12
3.2 文档整体结构:HTML.head(头)和body(体) 13
3.2.1 html标签 13
3.2.2 [head]标签 13
3.2.3 [body]标签 14
3.3 样式定义 14
3.4 块元素:段落标记和其他内容块 14
3.4.1 格式化的段落 15
3.4.2 标题 15
3.4.3 引用的文本 15
3.4.4 列表元素 15
3.4.5 预先格式化的文本 16
3.4.6 分区 16
3.5 行内元素:字符标签 18
3.5.1 基本的行内标签 18
3.5.2 跨越文本 18
3.6 特殊字符(实体) 19
3.7 组织性元素 19
3.7.1 表格 19
3.7.2 表单 20
3.8 到其他页面的链接 21
3.9 图片 21
3.10 注释 22
3.11 脚本 22
3.12 用这些组成部分形成完整的HTML文档 23
3.13 小结 23
第4章 HEAD元素 24
4.1 指定文档标题 24
4.2 向搜索引擎提供信息 24
4.3 设置默认路径 25
4.4 脚本区 26
4.5 样式区 26
4.6 指定配置信息 26
4.7 背景颜色和背景图片 27
4.7.1 指定文档背景颜色 27
4.7.2 指定文档的背景图片 27
4.8 小结 28
第5章 文本结构化基础 29
5.1 段落格式化 29
5.2 分行 30
5.3 分区 30
5.4 横线 33
5.5 块引用 33
5.6 预格式化文本 33
5.7 小结 34
第6章 字符格式化基础 35
6.1 文本控制的方法 35
6.1.1 [font]标签 35
6.1.2 强调和其他文本标签 36
6.1.3 CSS文本控制 36
6.2 粗体和斜体文本 37
6.3 使用强调代替斜体 37
6.4 等宽(打字机)字体 38
6.5 上标和下标 38
6.6 缩写 38
6.7 将编辑性插入和删除标记出来 38
6.8 用[span]标签组合行内元素 39
6.9 小结 39
第7章 列表 40
7.1 了解列表 40
7.2 有序列表(数字编号) 41
7.3 无序列表(符号列表) 43
7.4 定义列表 45
7.5 嵌套列表 45
7.6 小结 46
第8章 链接 47
8.1 什么是链接 47
8.2 链接到网页 48
8.3 绝对链接和相对链接 49
8.4 链接目标 49
8.5 链接标题 50
8.6 键盘快捷方式和标签顺序 50
8.6.1 键盘快捷方式 51
8.6.2 Tab切换顺序 51
8.7 创建锚链 51
8.8 选择链接颜色 52
8.9 链接目标详细信息 52
8.10 link标签 53
8.11 小结 53
第9章 表格 54
9.1 HTML表格的组成部分 54
9.2 表格的宽度和对齐 55
9.3 单元格间距和填充 57
9.4 边框和线条 57
9.4.1 表格边框 57
9.4.2 表格线 58
9.5 行 59
9.6 单元格 60
9.7 表格标题 61
9.8 行分组——标题.主体和页脚 62
9.9 背景颜色 63
9.10 跨越行和列 63
9.11 列分组 65
9.12 小结 66
第10章 帧 67
10.1 帧概述 67
10.2 帧集和帧文档 68
10.2.1 创建帧集 68
10.2.2 帧的边界.边框和滚动栏 69
10.2.3 允许或禁止用户修改 70
10.3 将链接定位到帧 71
10.4 嵌套帧集 72
10.5 内联帧 72
10.6 小结 74
第11章 表单 75
11.1 理解表单 75
11.2 插入表单 78
11.2.1 HTTPGET 78
11.2.2 HTTPPOST 78
11.2.3 额外的[form]属性 78
11.3 字段标记 79
11.4 文本输入框 79
11.5 密码输入框 79
11.6 单选按钮 79
11.7 复选框 80
11.8 列表框 80
11.9 大段文本输入 81
11.10 隐藏字段 82
11.11 按钮 82
11.12 图片 83
11.13 文件字段 83
11.14 提交和重置按钮 83
11.15 制表键顺序和键盘快捷方式 84
11.16 禁止改变 84
11.17 字段集和标题 85
11.18 在表单上使用事件 86
11.19 表单脚本和脚本服务 88
11.19.1 下载处理程序 88
11.19.2 使用脚本服务 88
11.20 小结 88
第12章 色彩和图片 89
12.1 Web颜色基础 89
12.2 Web颜色的变迁 90
12.3 使用正确的方式指定颜色 93
12.4 Web的图形格式 94
12.4.1 图像压缩 94
12.4.2 压缩选项 95
12.4.3 GIF格式 95
12.4.4 JPEG格式 95
12.4.5 PNG格式 95
12.5 创建图片 96
12.5.1 核心功能 96
12.5.2 渐进JPEG和交错GIF 96
12.5.3 使用透明度 97
12.6 插入图片 98
12.7 图片对齐 98
12.8 指定非图形浏览器上显示的文本 99
12.9 调整图片大小 100
12.10 图片边框 101
12.11 图片地图 102
12.11.1 指定图片地图 102
12.11.2 指定可点击区域 102
12.12 动画图片 104
12.13 小结 104
第13章 多媒体 105
13.1 动画图片 105
13.2 动画和视频格式.插件.播放器 106
13.2.1 流行的格式和播放器(插件) 107
13.2.2 WindowsMediaPlayer 108
13.3 通过object标签嵌入媒体 108
13.4 使用[object]标签嵌入Windows媒体播放器 110
13.5 在网页上添加声音 111
13.6 创建多媒体文件 112
13.7 多媒体总结 112
13.8 小结 112
第14章 特殊字符 113
14.1 理解字符编码 113
14.2 特殊字符 114
14.3 En和Em空白以及横线 114
14.4 版权符号与商标符号 115
14.5 货币符号 115
14.6 “真正的”引号标记 116
14.7 箭头 116
14.8 重音字符 116
14.9 希腊和数学字符 118
14.10 其他有用实体 121
14.11 小结 122
第15章 国际化和本地化 123
15.1 国际化和本地化 123
15.2 Web国际化 124
15.3 翻译网站 124
15.4 理解Unicode 125
15.5 小结 128
第16章 脚本 129
16.1 客户端脚本与服务器端脚本 129
16.1.1 客户端脚本 129
16.1.2 服务器端脚本 129
16.2 设置默认脚本语言 130
16.3 包含脚本 130
16.4 调用外部脚本 131
16.5 用事件触发脚本 131
16.6 对老版浏览器隐藏脚本 133
16.7 小结 134
第17章 动态HTML 135
17.1 对DHTML的需求 135
17.2 DHTML的工作方式 136
17.3 文档对象(DOM)模型 136
17.3.1 DOM的历史 136
17.3.2 理解文档对象模型 136
17.3.3 DOM节点的属性和方法 138
17.3.4 遍历和修改文档节点 139
17.4 JavaScript文档对象模型 141
17.5 通过元素的ID访问元素 144
17.6 使用事件处理器 144
17.7 跨浏览器兼容性问题 145
17.7.1 浏览器检测:查询浏览器的标识 145
17.7.2 浏览器检测:对象检测.. 146
17.8 DHTML示例 146
17.8.1 路径导航(页面位置指示) 146
17.8.2 轮转效果 148
17.8.3 可以折叠的菜单 149
17.9 小结 150
第2部分 HTML工具和变体
第18章 Web开发软件 153
18.1 纯文本编辑器 153
18.1.1 简单文本编辑器 153
18.1.2 智能文本编辑器 153
18.1.3 特定于HTML的编辑器 154
18.2 所见即所得的HTML编辑器 155
18.2.1 NetObjectFusion 155
18.2.2 Dreamweaver 155
18.3 其他工具 157
18.3.1 图形编辑器 157
18.3.2 AdobeFlash 158
18.4 小结 158
第19章 发布网站 159
19.1 FTP介绍 159
19.2 FTP客户端 160
19.3 知名的FTP客户端 161
19.4 Web服务器上文件的组织原则 162
19.5 小结 162
第20章 用微格式连接数据 163
20.1 为什么使用微格式 163
20.2 微格式示例——hCard 164
20.3 另一个示例——地理位置数据 166
20.4 如何实现微格式 167
20.5 小结 167
第21章 XML简介 168
21.1 XML基础 168
21.2 XML语法 169
21.2.1 XML声明和DOCTYPE 169
21.2.2 属性 171
21.2.3 注释 171
21.2.4 非解析数据 171
21.2.5 实体 171
21.2.6 命名空间 172
21.2.7 样式表 172
21.3 使用文档类型定义 173
21.3.1 在DTD中使用元素 173
21.3.2 在DTD中使用属性 175
21.3.3 在DTD中使用实体 175
21.3.4 在DTD中使用PCDATA和CDATA 175
21.4 XML架构简介 176
21.5 使用架构 176
21.6 使用XML 177
21.6.1 可扩展样式表语言转换 178
21.6.2 XML编辑 178
21.6.3 XML解析 178
21.7 小结 178
第22章 创建移动网页 179
22.1 理解Web移动性的发展历史 179
22.1.1 移动性的原始时代 179
22.1.2 开放移动联盟和其他标准 180
22.1.3 底线 180
22.2 XHTMLBasic1.1 180
22.2.1 XHTMLBasic1.1的文档类型 181
22.2.2 XHTMLBasic1.1的元素 181
22.2.3 特殊考虑 181
22.3 移动Web开发工具 183
22.4 小结 183
第23章 整理和验证文档 184
23.1 整理HTML代码 184
23.1.1 HTMLTidy 186
23.1.2 获得HTMLTidy 186
23.1.3 运行HTMLTidy 186
23.2 验证代码 188
23.2.1 指定正确的文档类型声明 188
23.2.2 验证工具 188
23.2.3 理解验证的输出 188
23.3 额外的测试和验证 189
23.3.1 用各种用户代理进行测试 189
23.3.2 针对不同的显示设置进行测试 189
23.4 小结 189
第24章 HTML提示和技巧 190
24.1 预加载图片 190
24.2 控制表格单元格中的文本拆分 191
24.3 扩展标题栏 191
24.4 模拟报纸的栏 193
24.5 包含图片大小,以便迅速显示 194
24.6 保护电子邮件地址 194
24.7 小结 195
第3部分 用CSS控制内容呈现
第25章 CSS基础 199
25.1 样式的用途 199
25.2 样式和HTML 200
25.3 CSS级别1.2.3 200
25.4 定义样式 201
25.5 层级样式表 202
25.6 小结 203
第26章 样式定义 204
26.1 样式定义的格式 204
26.2 理解选择器 205
26.2.1 按类型匹配元素 205
26.2.2 使用通用选择器匹配 205
26.2.3 按类匹配元素 205
26.2.4 按标识符匹配 206
26.2.5 按特定属性匹配 206
26.2.6 匹配子元素.后代元素和相邻兄弟元素 206
26.3 理解样式继承 208
26.4 使用伪类 208
26.4.1 锚链样式 208
26.4.2 :first-child第一个孩子伪类 209
26.4.3 :lang伪类 209
26.5 伪元素 209
26.5.1 第一行 209
26.5.2 首字母 210
26.5.3 之前和之后 211
26.6 快捷表达式 211
26.7 小结 212
第27章 CSS值和单位 213
27.1 属性值的通用规则 213
27.2 属性值度量单位 214
27.2.1 关键字 214
27.2.2 真实度量单位 215
27.2.3 屏幕度量单位 215
27.2.4 相对度量单位 216
27.2.5 颜色和URL函数 217
27.2.6 声音度量单位 217
27.3 小结 218
第28章 CSS继承和层级 219
28.1 CSS继承 219
28.2 CSS层级 220
28.3 样式具体程度 221
28.4 小结 221
第29章 字体属性 222
29.1 理解字体 222
29.2 字体类型 223
29.3 字体大小 223
29.4 字体样式 224
29.5 行间距 225
29.6 在文档中嵌入字体 225
29.7 小结 226
第30章 文本格式化 227
30.1 文本对齐 227
30.1.1 控制水平对齐 227
30.1.2 控制垂直对齐 229
30.2 文本缩进 230
30.3 控制文本内的空白 230
30.3.1 清除浮动对象 230
30.3.2 white-space属性 231
30.4 控制字母和单词间距 232
30.5 控制大小写 232
30.6 使用文本装饰 233
30.7 自动生成的文本 234
30.8 使用CSS表格属性 234
30.9 控制表格属性 234
30.9.1 表格边框 235
30.9.2 表格边框间距 235
30.9.3 合并边框 235
30.9.4 空单元格的边框 236
30.10 表格布局 236
30.11 标题对齐和定位 237
30.12 小结 238
第31章 CSS列表 239
31.1 列表概述 239
31.2 在任何元素上均可实现CSS列表 240
31.3 列表样式类型 240
31.4 标记位置 241
31.5 使用图片作为列表标记 242
31.6 小结 242
第32章 填充.边界和边框 243
32.1 CSS方框格式化模式 243
32.2 元素填充 244
32.3 元素边框 245
32.3.1 边框宽度 245
32.3.2 边框样式 245
32.3.3 边框颜色 246
32.3.4 边框属性快捷方式 246
32.3.5 边框间距 247
32.4 元素边界 247
32.5 动态轮廓 247
32.6 小结 248
第33章 颜色和背景 249
33.1 元素颜色 249
33.1.1 前景色 249
33.1.2 背景色 250
33.2 背景图片 251
33.2.1 将背景颜色与图片结合 252
33.2.2 重复和滚动图片 253
33.2.3 定位背景图片 254
33.2.4 background快捷属性 255
33.3 小结 255
第34章 CSS布局:浮动和定位 256
34.1 理解CSS定位 256
34.1.1 静态定位 256
34.1.2 相对定位 256
34.1.3 绝对定位 257
34.1.4 固定定位 257
34.2 指定元素位置 258
34.3 将元素左右浮动 259
34.4 定义元素的宽度和高度 260
34.4.1 指定确切大小 260
34.4.2 指定最大和最小大小 260
34.4.3 控制元素溢出 260
34.5 在层上堆叠元素 261
34.6 控制元素的可见性 263
34.7 小结 263
第35章 伪元素和生成的内容 264
35.1 content属性 264
35.2 伪元素 265
35.2.1 :first-line 266
35.2.2 :first-letter 266
35.2.3 :before和:after 267
35.3 引用标记 267
35.4 自动为元素编号 267
35.4.1 计数器对象 267
35.4.2 修改计数器的值 268
35.4.3 计数器示例:章节编号 268
35.4.4 自定义列表编号 269
35.5 小结 269
第36章 用CSS实现动态HTML 270
36.1 用JavaScript访问CSS属性 270
36.2 有用的CSS操作方式 273
36.2.1 隐藏和显示文本 273
36.2.2 图片缩放 274
36.2.3 翻转效果的菜单按钮 276
36.3 小结 277
第37章 媒介样式以及定义打印用文档 278
37.1 理解CSS媒介类型 278
37.2 设置打印用文档 280
37.2.1 页面框格式化模型 280
37.2.2 用@page规则定义页面大小 280
37.2.3 控制分页 281
37.2.4 处理寡行和孤行情况 283
37.2.5 准备双面打印文档 283
37.3 创建多媒介文档 283
37.3.1 联机(屏幕媒介)文档 284
37.3.2 重新格式化页面 285
37.4 小结 286
第4部分 附加的CSS技能
第38章 用HTML表格格式化 289
38.1 用表格进行格式的基础知识 289
38.2 真实示例 291
38.3 浮动页面 291
38.4 不规则图片和文本组合 293
38.5 导航菜单和块 294
38.6 多列 295
38.7 小结 296
第39章 用户界面样式 297
39.1 修改光标 297
39.2 用户界面颜色 298
39.3 用户界面字体 300
39.4 小结 300
第40章 测试和验证CSS 301
40.1 在建立样式时测试语法 301
40.2 关于格式化 302
40.3 验证CSS 302
40.4 小结 303
第41章 CSS提示和技巧 304
41.1 悬挂缩进 304
41.2 展开按钮 305
41.3 提出引用 306
41.4 标签式菜单 307
41.5 小结 309
附录A HTML元素快速参考 310
A.1 元素清单 311
A.2 事件属性 338
A.3 其他公共属性 339
附录B HTML特殊字符快速参考 341
附录C CSS属性快速参考 346
附录D CSS选择器快速参考 360
D.1 基本元素选择器 360
D.2 后代选择器 361
D.3 子女选择器 361
D.4 相邻兄弟选择器 361
D.5 类选择器 361
D.6 ID选择器 361
D.7 属性选择器 361
附录E 伪元素和伪类快速参考 363
E.1 伪元素 363
E.2 伪类 364
……
序言 欢迎阅读本书。本书经过精心筹划、设计与编写,为的是就两项最主要的Web技术,即超文本标记语言(HTML)和层级样式表(CSS),提供全面的介绍。
创建万维网文档(不论是简单的还是复杂的)时,本书可以作为所需信息的介绍和参考手册。
万维网在我们今天的生活中几乎无处不在,多数计算机和计算机化的设备都与万维网相连。但是,Web以及它底层的:Internet基础设施,在最初的时候完全不是现在的样子,与现代的消费者和商业用户对它的认识完全不同。
Interact起源于1960年左右美国国防部开始的高级研究项目处(AdvancedResearchProject.Agency,ARPA)计划。这个项目的目标之一,就是让计算机能够迅速地进行网络通信,而且要能跨越长距离进行通信。这个网络被设计成能够实现故障恢复,允许联网的计算机在它们之间的某些路由器出现故障的时候,也能够继续进行通信。
1969年,ARPANet网络诞生了,这个网络连接了几所关键的大学。
随着ARPANet的继续发展,越来越多的大学联入了网络。该项目最初的目标之一:实现健壮的、能够实现故障恢复的网络,最终由Internet协议(IP)所实现。这个协议允许网络通信的数据包在一条或多条路由变得不可靠时,也能找到去往目的地的其他路由。这个通信协议最后成为今天Internet的骨干,而Internet网络的名称也由此而来。
后来,在IP协议之上,又结合了传输控制协议(TCP),用来提供强壮的传输系统。这两个协议的结合实现了更高的灵活性,而且提供了为Interact开发更好的通信应用程序的能力。
在20世纪80年代,Interact经历了几个转变。虽然Interact的主要用户是教育机构,但美国军方并未忘记自己最初的项目。其他政府部门也开始关注此项目,并加入到该网络当中来。美国军方决定建立自己的网络MIINET,从而略微缓解了Internet的负担。
直到1992年,Intemet还远远不是世界上最流行的网络。在这一时期,Tim Bemers.Lee开发了可创建文档的超文本标记语言,发送这类文档的协议:超文本传输协议(HTTP),以及第一个浏览器编辑器,称为万维网(World Wide Web)。很快“Web”这个记号就得到了国家超级计算应用中心(NCSA)的关注。NCSA的一个编程团队决定开发更好的浏览器,于是对多媒体提供高度支持的第一个浏览器Mosaic就此诞生了。Mosaic促进了现代浏览器的出现与发展。
到2l世纪早期,几乎所有联网的计算机、许多电子设备以及一些消费类设备(例如手机)都已经能够访问Web。这些连接到Web的设备使用的都是同一种连接,用来定义文档的语言也是同一种语言,发送信息使用的也是同一种协议。
在万维网的整个发展过程当中,尤其是在最近的几年间,标准、工具以及应用程序已经发生了很大变化,有了很大发展,有些时候这种发展变化的步伐非常迅速。因此,有关Intemet的图书要覆盖的范围就应相当广泛。
文摘 插图:

第3部分用CSS控制内容呈现
第36章用CSS实现动态HTML
CSS是创建动态HTML特效的强大工具。在本章将会看到在各种浏览器中如何动态地修改CSS属性。在本章将看到如何访问CSS属性以及编写属性脚本来执行各种任务,修改文本颜色等,还将看到每个CSS属性都能够编程修改。
在本章还将看到有些浏览器(最著名的就是internetExplorer)提供了类似CSS的功能来实现动态的滤镜效果,例如下拉阴影和模糊。
36.1 用JavaScript访问CSS属性
Mozilla和InternetExplorer(IE)浏览器支持JavaSeript过它们的文档对象模型—OM)访问CSS1的元素属性。但是,Mozilla的DOM和InternetExplorer的DOM各不相同。他们都部分实现了W3CCSS2标准,但是实现的领域仍然不同,所以在一个浏览器上的CSS2的JavaScript代码在另一个浏览器上可能无法工作。请注意,Geck0布局引擎覆盖了W3CCSS2标准的所有属性。
一般来说,访问CSS属性的方式全都相同,都是将值读为属性,通过方法设置值。要在脚本中访问CSS属性,需要使用属性的名称,除非在名称有连字符。