译者序 1
致谢 1
作者简介 1
引言 1
第一章 万维网和超媒体发布技术 1
1.1 什么是万维网 1
1.1.1 万维网的上网人数统计 1
1.2 Web发布的工作过程 2
1.2.1什么是Web浏览器 3
1.2.2 什么是URL 4
1.2.3 什么是HTTP服务器 4
1.3 HTML标准及扩充 5
1.3.1 HTML及HTML扩展的四个版本 5
1.4 Netscape/Microsoft浏览器战争 7
1.3.2 HTML的元素 7
1.4.1 Netscape Navigator和Netscape Communicator 8
1.4.2 Microsoft Internet Explorer 9
1.4.3 辅助应用程序和插件 11
1.4.4 多平台和浏览器的发布 13
1.5 控制Web文档的布局 13
1.5.1 用HTML标签控制布局 14
1.5.2 使用JavaScript和JScript 14
1.5.3 使用Microsoft 的VBScript和ActiveX 15
1.5.4 使用Java 15
1.6 创作和发布工具 16
1.6.1 寻找你需要的东西 16
1.6.2 访问档案文件中的信息 18
1.7 Web发布选项 18
1.8.1 Web文档的扩充风格 19
1.8 Web发布技术的未来 19
1.8.2 可下载的字体 20
1.8.3 Push与Pull 20
1.8.4 网页的个性化 21
1.9 小结 21
第二章 设计和构造你的Web站点 22
2.1 线性文档与超媒体文档 22
2.2 构造你的Web站点 22
2.2.1 定义目标 23
2.2.2 筹划你的站点 24
2.2.3 信息“分块” 24
2.3 界面设计和导航 26
2.3.1 定义和吸引你的观众 27
2.3.2 开发一致的外观和感受 28
2.3.3 确定导航链接 30
2.3.4 访问和系统性能的平衡 32
2.4 单个Web网页设计提示 33
2.4.1 主页设计提示 34
2.4.2 连续网页设计提示 34
2.5 小结 38
第三章 创建和编辑HTML文档 40
3.1 从HTML开始 40
3.1.1 创建HTML文档的选项 41
3.1.2 基本的文档结构 42
3.1.3 添加注释 42
3.1.4 DOCTYPE标签 43
3.2 HEAD标签 43
3.2.1 TTTLE标签 43
3.2.3 其他HEAD标签 44
3.2.2 META标签 44
3.3 BODY标签 45
3.3.1 BODY标签属性 45
3.3.2 组织你的文档 48
3.3.3 插入内联图形图像 49
3.3.4 使用段落标签及其属性 50
3.3.5 一个简单的HTML页面 50
3.3.6 使用水平嵌线 51
3.3.7 使用列表 52
3.3.8 增加空白空间 58
3.3.9 字符的格式化 60
3.3.10 指定字体 64
3.3.11 加入特殊字符 64
3.3.12 使用分隔符 66
3.4 HTML4.0扩充 67
3.4.1 使用标签的“拉客户”(Client-Pull) 68
3.4.2 公共扩充 69
3.5 确认你的Web文档 69
3.5.1 验证软件 69
3.5.2 实时Web验证 70
3.6 发布你的Web文档 71
3.7 小结 71
第四章 链接技术 72
4.1 锚标签 72
4.2 创建一个到本地页或文件的链接 72
4.2.1 本地链接的重要性 75
4.2.2 链接本地文件 75
4.2.3 绝对和相对路径 76
4.2.4 加入特殊字符 76
4.3 建立到其他站点的链接 77
4.4 在一页中建立链接 78
4.5 建立带图像的链接 80
4.6 建立到不同类型的URL的链接 82
4.6.1 使用FTP URL 82
4.6.2 使用Gopher URL 83
4.6.3 使用新闻URL 84
4.6.4 使用Mailto URL 85
4.6.5 使用Telnet Rlogin URL 86
4.7 有效地使用链接 86
4.8 检验链接 87
4.9 链接和URL的未来 88
4.10 小结 89
5.1.1 创建简单表格 90
5.1 创建表格 90
第五章 表格、栏目和窗体 90
5.1.2 增加标题和边框 91
5.1.3 控制表格的宽度和高度 93
5.1.4 指定表格单元的宽度和高度 93
5.1.5 对齐表格和表格单元中的数据 94
5.1.6 为表格单元添加背景色 96
5.1.7 控制空白单元的显示 97
5.1.8 调整单元边界和间隔 101
5.1.9 单元的跨行和跨列 102
5.1.10 嵌套表格 104
5.1.11 高级表格剖析 105
5.2 高级表格标签和属性 109
5.2.1 定义表格节 109
5.2.2 控制表格边界及单元划线 109
5.2.3 定义列和对齐列 114
5.2.4 列分组 117
5.2.5 在表格中加入背景图像 119
5.2.6 创建三维彩色表格边界 120
5.3 用表格布局Web页面 120
5.3.1 简单的布局网格 121
5.3.2 创建多列 125
5.3.3 创建可放缩的水平和垂直线 130
5.3.4 不同浏览器中表格的区别 132
5.4 创建弯曲的列 132
5.5 窗体设计 135
5.5.1 在窗体中显示网页 136
5.5.2 定义列宽和行高 137
5.5.4 创建目标页 138
5.5.3 创建单个窗体 138
5.5.5 定位视窗 141
5.5.6 内联窗体 142
5.5.7 用脚本控制窗体 143
5.6 小结 143
第六章 用图像获取图形 145
6.1 Web图形基础 145
6.1.1 理解像素和位深 145
6.1.2 分辨率和屏幕空间 146
6.1.3 Web安全调色板 146
6.1.4 交织图像 148
6.1.5 GIF格式 148
6.1.6 JPEG格式 150
6.1.7 PNG格式 150
6.2.1 图像与版权 152
6.2 获取图像文件 152
6.2.2 专业剪贴图与照片图像 153
6.2.3 扫描图像和数字摄影 153
6.2.4 Web站点上的免费图像 154
6.3 包含内联图像 154
6.3.1 为图像提供可选文本 155
6.3.2 指定图像的宽度和高度 155
6.3.3 从低分辨率图像淡入高分辨率图像 156
6.4 定位内联图像 156
6.4.1 在图像周围添加空白量 158
6.4.2 透明像素 158
6.4.3 结图像增加边界 159
6.4.4 利用图标图像节省带宽 159
6.4.6 在程序清单中用图像代替圆点标记 161
6.4.5 使用图像作为水平线或强调 161
6.5 改变背景色和前景色 162
6.5.1 选择Web安全颜色 163
6.5.2 指定背景色 168
6.5.3 利用彩色浏览器指定背景颜色 169
6.5.4 使用图像作为背景 169
6.5.5 改变前景:文本和链 170
6.6 小结 171
第七章 图像的编辑和优化 172
7.1 万维网是一个位图的世界 172
7.2 图像编辑器 173
7.2.1 Adobe Photoshop 173
7.2.2 Paint Shop Pro 174
7.2.3 PhotoImpact 174
7.2.5 3D Tools 175
7.2.4 Fractal Design Painter 175
7.3 电子画布 176
7.3.1 分辨率 176
7.3.2 RGB、CMYK和索引模式 176
7.3.3 灰度系数 177
7.3.4 抖动 178
7.3.5 抗失真图像 179
7.4 编辑现有的图像文件 179
7.4.1 始于无损格式 179
7.4.2 如何改变分辨率设置 180
7.4.3 使用Web安全调色板 180
7.4.4 创建自己的调色板及使用适合性调色板 181
7.4.5 修剪和缩放图像 182
7.4.6 用图像显示效果字 183
7.5 创建有透明背景的交织GIF图像 184
7.6 GIF和JPEG压缩 186
7.6.1 确定文件大小 186
7.6.2 GIF压缩 188
7.6.3 JPEG压缩 188
7.7 图像优化工具 190
7.7.1 Ulead的SmartSaver 190
7.7.2 Digtal Frontiers的HVS JPEG和WebFocus 190
7.7.3 WebVise Totality 191
7.7.4 GIF Wizard 191
7.8 TCP/IP数据包和图像 192
7.9.1 运用CRLI进行GIF压缩 194
7.9.2 运用模糊(Blur)技术对进行JPEG压缩 196
7.10 质量检查表和快速下载保证 197
7.12 创建GIF动画 199
7.11 使用过滤器产生特殊效果 199
7.9 创建无缝背景瓦片和边界 199
7.13 创建图像映象 203
7.13.1 指定热点 204
7.13.2 使用Map This创建客户方的图像映象 204
7.13.3 加入图像映象坐标 206
7.14 小结 208
第八章 风格纸 209
8.1 风格元素 209
8.1.1 上下文选择器 210
8.1.2 增加注释 210
8.2 指定风格和链接风格纸 210
8.2.1 加入内联风格 211
8.2.2 把SPAN应用到风格中 211
8.2.3 内部风格分组 211
8.2.4 链接外部风格纸 213
8.2.5 选择一种风格说明的方法 214
8.3 用CLASS和ID创建独特的风格 215
8.3.1 用CLASS定义风格 215
8.3.2 用ID处理例外情况 217
8.4 理解级联和继承 217
8.4.1 继承风格 218
8.4.2 引入风格纸 218
8.4.3 风格战争 219
8.5 理解风格属性 219
8.5.1 在STYLE属性中设置尺寸 220
8.5.2 边界、填充和边界框 221
8.6 选择和使用字体 222
8.6.1 作为图形元素的字体 222
8.6.2 什么是雕刻文字(Glyph) 223
8.6.4 单空间字体和比例字体 224
8.6.3 字体族 224
8.6.5 测量字体 225
8.6.6 字体的重量 225
8.6.7 用名字和类型指定字体 226
8.6.8 字体匹配怎样实现的 228
8.6.9 设置字体尺寸 229
8.6.10 设置字体风格 231
8.6.11 设置字体的重量 231
8.6.12 用小型的大写字符设置文本 232
8.7 控制布局 232
8.7.1 控制边界 233
8.8 控制文本 235
8.8.1 控制缩进格式 235
8.8.2 控制行间距 236
8.8.3 对齐文本 237
8.8.4 设置特殊的文本效果 239
8.9 控制列表 240
8.10 改变背景图像及颜色 242
8.10.1 背景图像 242
8.11 边界 244
8.12 为向风格挑战的浏览器创建风格纸 245
8.13 小结 246
第九章 表单、CGI和Perl之间的交互 248
9.1 表单 248
9.2 理解表单是怎样被呈递的 249
9.3 构造表单 249
9.3.1 创建入口域 251
9.3.2 创建下拉式列表框 251
9.3.3 创建文本域 252
9.3.4 创建多选择列表框 253
9.3.5 创建检查框和圆形按钮 255
9.3.6 创建文本区 258
9.3.7 使用其他的INPUT域属性 259
9.4 什么是CGI 263
9.5 在Web网页上使用CGI 264
9.6 CGI程序设计选项 265
9.7 为什么用Perl 265
9.8 获取并安装Reperl 266
9.9 Perl CGI程序剖析 267
9.10 从Perl CGI程序控制输出 271
9.10.1 指定Content Type 272
9.10.2 运用Location Header加载一个文档 272
9.10.3 用状态码控制服务器响应 273
9.11 服务器怎样获取和传送数据给CGI脚本 274
9.11.1 CGI环境变量 274
9.11.2 URL编码 276
9.11.3 用GET传递数据 276
9.11.4 使用POST传递数据 277
9.12 分析URL编码的数据 278
9.12 1 用CGI-LIB.PL分析数据 279
9.12.2 函数与子例程 282
9.12.3 文件处理 283
9.13 调试Perl程序 286
9.14 例子:为HTML表单建立Perl脚本 287
9.14.1 第一部分:创建表单 287
9.14.2 第二部分:创建CGI脚本 288
9.14.3 第三部分:把文件传到服务器 289
9.14.4 第四部分:设置权限 290
9.14.5 第五部分:测试表单和脚本 291
9.15 NPH脚本 294
9.16 Cookies 295
9.16.1 什么是Cookie 295
9.16.2 生成和修改Cookie 295
9.16.3 Cookie设置 296
9.16.4 设置Cookie 297
9.16.5 回收Cookie数据 298
9.16.6 删除Cookie 299
9.17 小结 300
第十章 增加闪烁的声音和生动的视频 301
10.1 在Web站点七增加声音和视频 301
10.1.1 用流声和视频结束等待 302
10.2 最有力的支持多媒体的插件 303
10.2.1 Apple QuickTime和QuickTime VR 304
10.2.2 Bamba和Bamba for Java 304
10.2.3 Crescendo 304
10.2.4 MIDPLUG 304
10.2.5 RealPlayer 304
10.2.6 Shockwave和Flash 305
10.3 发布声音文件 305
10.4 数字音频基础:抽样深度和抽样率 305
10.5 声音文件格式 306
10.5.1 MIDI文件 307
10.5.2 μ-规则:Sun/Next音频文件格式 307
10.5.3 波形(WAV)声音格式 307
10.5.4 音频交换文件格式(AIFF) 307
10.6 在Web网页上包含声音文件 308
10.5.5 MPEG音频格式 308
10.6.1引进 LiveAudio Player 309
10.6.2 LiveAudio语法 310
10.7 获取声音文件 312
10.7.1 Windows中的声音 313
10.7.2 Macintosh上的声音 314
10.8 声音编辑器和工具 314
10.8.1 创建声音文件 314
10.8.2 声音质量 315
10.8.3 Windows声音编辑 315
10.8.4 Macintosh声音编辑 316
10.9 转换声音文件 319
10.9.1 把WAV转换成μ-规则 319
10.9.2把AIFF转换成MPEG Layer Ⅱ 320
10.9.3 把AIFF转换成μ-规则 321
10.9.4 转换到其他格式 322
10.10 发布视频 322
10.10.1 视频规范与文件格式标准 323
10.10.2 窗口中MPEG的价值 327
10.11 获取视频文件 329
10.12 在Web网页上包含视频文件 329
10.12.1 视频编辑器 330
10.13 创建震撼站点及闪烁动画 333
10.14 小结 334
第十一章 交互式页面和脚本 336
11.1 Java基础 336
11.1 .1 Java基础 336
11.1.2 使用Java applet 337
11.1.3 对于不支持Java的浏览器 340
11.1.4 Java资源 340
12.2.1 JavaScript、JScript和ECMAScript 341
11.2 浏览器脚本沙箱 341
11.3 JavaScript速成教程 342
11.3.1 嵌入脚本 342
11.3.2 JavaScript源 342
11.3.3 JavaScript对象及其属性 343
11.3.4 JavaScript函数 344
11.3.5 JavaScript事件句柄 345
11.3.6 JavaScript变量 348
11.4 JavaScript工具 348
11.4.1 Visual JavaScript 349
11.4.2 JavaScript调试 350
11.5 有用的JavaScript例程 350
11.5.1 确定浏览器 351
11.5.2 表单确认 352
11.5.3 创建实时文档 354
11.6 已有的JavaScript例程资源 357
11.7 用VRML进入三维世界 357
11.7.1 嵌入VRLM世界 357
11.7.2 VRLM工具和资源 359
11.8 小结 360
第十二章 动态HTML 361
12.1 它是什么和它不是什么 361
12.2 文档对象模型和CSS扩充 362
12.3 CSS定位扩充 362
12.3.1 用CSS实现绝对定位 364
12.3.2 相对定位 367
12.3.3 相对位移元素 369
12.3.4 流元素 370
12.3.5 剪载文本和图像 371
12.3.6 层叠元素 373
12.3.7 指定可见性和改变层叠次序 374
12.4 Netscape的层标注 377
12.4.1 层的定位 378
12.4.2 堆栈层 378
12.4.3 在层中使用外部文件 380
12.4.4 剪贴层 381
12.4.5 指定可见性和更改层顺序 381
12.5 捕获高级事件 384
12.5.1 在Netscape中捕获文档级事件 384
12.5.2 MSIE中的事件“冒泡” 385
12.6 动态字体 385
12.6.1 Microsoft的字体嵌入技术 386
12.6.2 Netscape动态字体 386
12.8 动态HTML工具 390
12.7 Microsoft的数据束定 390
12.9 动态HTML示例 391
12.9.1 简单动画 391
12.9.2 百页窗转换 392
12.9.3 希望您已在这儿 393
12.9.4 简单弹出 397
12.9.5 改变DIV内容 398
12.10 小结 401
第十三章 服务机构的Web服务器 402
13.1 理解服务的有用性 402
13.2 自己亲自去 403
13.3 共享空间 403
13.3.1 需要的开销 403
13.3.2 我的地址看起来是什么样子 404
13.3.3 能获得哪些其他方面的服务 404
13.4.2 我的地址看起来像什么 405
13.4.1 需要的开销 405
13.3.4 我可以添加CGI脚本吗 405
13.4 虚拟服务器:拥有不是真正码服务器的自己的服务器 405
13.5 Cybermall 406
13.6 联合定位 407
13.7 服务器服务和Web网页 407
13.8 购物 407
13.8.1 基本问题 407
13.8.2 购买虚拟服务器 408
13.8.3 购买虚拟店面 408
13.9 理解Web(HTTP)服务器 409
13.9.1 服务器端的服务 409
13.9.2 HTTP协议 412
13.10 安全性问题 413
13.10.1 认证 413
13.10.2 安全Socket层 414
13.10.3 数字认证 415
13.11 选择Web服务器 415
13.11.1 Apache(UNIX,Windows95/NT,OS/2) 415
13.11.2 NCSA HTTPd (UNIX) 416
13.11.3 O Reilly的WebSite Server 416
13.11.4 Netscape的FastTrack Server(UNIX,Windows95/NT) 417
13.11.5 Netscape的Standard SuiteSpot Server和Professional SuiteSpot Server(UNIX/Windows NT) 417
13.11.6 Microsoft的个人Web服务器(Windows95/NT) 417
13.11.7 Microsoft Internet“信息服务器”( Windows NT) 418
13.11.8 Microsoft Site Server,Enterprise Edition(Windows NT) 418
13.11.9 StarNine WebSTAR服务器(Macintosh) 419
13.12 安装和配置HTTP服务器 419
13.14 管理Web站点 420
13.14.1 更新网页 420
13.13 数据库和服务器 420
13.13.2 阅读日志文件 421
13.14.3 HTML确认 422
13.15 小结 422
第十四章 XML和元数据:Web发布的未来 423
14.1 扩充标签语言(XML)和SGML 423
14.1.1 HTML的局限性 423
14.1.2 SGML的特点 424
14.1.3 HTML和XML的比较 424
14.2 XML文档的使用 425
14.3 XML的扩展链接 425
14.4 XML文档结构 426
14.4.1 物理结构 426
14.4.3 逻辑结构和物理结构的关系 427
14.4.2 逻辑结构 427
14.4.4 创建形式优美的XML文档 428
14.4.5 创建有效的XML文档 428
14.5 访问DTD 430
14.6 数据类型和声明 431
14.7 XML工具和浏览器 431
14.8 什么是元数据 432
14.9用元数据进行分类和信息索引 432
14.10 元数据的实例:Microsoft的隧道定义格式(CDF) 433
14.11 小结 434
附录 435
附录A 关于配套的CD-ROM 435
附录B HTML语言和风格纸参考 446
附录C 资源 508
附录D 脚本示例:存储表单输入到一个日志文件中 540