第一章 Web标准不是神话 1
1.1理解Web标准 1
Web标准是什么 1
错误的思维 5
无障碍网页倡议(WAI) 7
1.2量化Web标准 8
大部分通过W3C校验的网站只是伪标准 8
Web标准要求一览表 9
是追求标准还是理解标准 10
1.3为什么选择Web标准 11
1.4 CSS为什么着火 12
CSS的作用 12
CSS布局VS.表格布局 13
1.5我能否学好Web标准 14
我需要具备什么素质和条件才能学好Web标准 14
学习的重点与难点 14
1.6欲善其事,先利其器 15
软件的选择 16
调试环境 18
第二章 XHTML——浏览器上的新大陆 20
2.1一切从语义开始 20
2.2网页的构成 22
2.3常见标签 23
标题 23
内容 25
列表 29
表格 31
表单 33
注释 38
2.4比HTML多出一个X 38
还多了什么 38
谁影响了网页的样子 40
浏览器的多模式 40
开启通往标准的模式 40
坚持Strict Markup 41
语义化 42
2.5按语义来分类 42
2.6块元素与内联元素 43
2.7 div不是神 45
合理应用 46
嵌套 46
div不是table 47
div与span的差别 48
第三章 CSS——网页美容师 49
3.1语法结构 49
基本结构 49
样式表中的注释 50
字符转义 50
3.2选择符的使用 50
通配选择符 50
类型选择符 51
包含选择符 51
子对象选择符 52
相邻选择符 53
属性选择符 54
匹配属性和属性值 54
类选择符 55
ID选择符 56
选择符分组 56
3.3伪元素与伪类 57
伪类 57
:flirst-child伪类 57
链接伪类——:Vink和visited 58
动态伪类——:hover、:active与:focus 58
语言伪类——:lang 59
伪对象 60
:first-letter 60
:first-line 60
:before和:aafter 61
3.4常用单位 62
长度单位 62
px vs.em 62
百分比单位 64
其他长度单位 64
颜色单位 64
3.5应用CSS在网页上 67
链入外部样式表 67
定义内部样式 68
定义内联定义 69
导入指定的外部样式表 69
各种方式的差异 69
糟糕的手持设备 70
3.6继承与覆盖 71
3.7优先权的计算 72
第四章 用XHTML和CSS来“摆”网页 74
4.1 开始你的第一个页面 74
4.2文字的表现 76
字体的外型 76
颜色的定义 85
背景的定义 86
4.3最简单的布局 88
Margin与Padding 89
单列固定宽度居中 90
单列自适应宽度 92
奇怪的高度 94
边框的定义 95
4.4郁闷的盒模型 98
4.5文字旁边的图片 100
baseline 100
垂直对齐 101
图片的浮动 103
4.6列表的应用 105
定义列表的外观 105
导航菜单的应用 107
列表的常见应用 113
4.7表格 114
表格的控制 115
为不同浏览器使用不同的选择符 120
伪表格——看起来像,其实却不是表格 123
4.8表单 124
样式表单 124
表单元素的细节 131
注册表单 134
第五章 布局之道 140
5.1固定的左右分栏 140
经典的三行两列固定宽度的布局 140
两列等高——背景伪造篇(一) 146
自由与未来 149
5.2自适应的左右分栏 153
经典的三行两列自适应宽度的布局 153
两列等高——背景伪造篇(二) 155
百分比的细节 156
clear:right与overflow 160
5.3一栏固定宽度,一栏自适应宽度 164
单栏浮动 164
浮动的负值可以让主要的内容优先显示 168
Min&Max 171
5.4多栏布局 174
三栏固定宽度和自适应的布局 174
混合固定宽度和自适应宽度的多栏布局 176
流出固定宽度的两栏在自适应宽度的中栏后面 177
偏移出来固定宽度的两栏在自适应宽度的中栏后面 181
5.5组合之路 185
第六章 不要害怕各式各样的浏览器 186
6.1浏览器的市场 186
古老的IE5.x 186
IE5.x/win 186
IE5.x/mac 187
讨厌的IE6 187
里程碑——IE7 187
新一代的IE4 187
开发利刃——Firefox 188
华丽的Oprea 188
异军——Safari 188
6.2兼容之道 189
条件注释 189
过滤浏览器 190
破坏属性 192
Hack之道 192
6.3兼容问题 193
一切从浮动开始 193
Layout初体验 195
闭合浮动元素 198
IE受不了浮动 202
浮动元素双倍margin 202
消失的margin-bottom 204
砍掉的内容 206
消失的内容 206
多了一只“猪” 207
IE的其他问题 208
背景消失 208
背景原点 209
没有内容的内容 210
消失的滚动条 211
更多的消失 213
Layout全接触 216
默认Layout元素 216
属性触发Layout 217
关于内联元素 217
重置hasLayout 217
引起问题 218
块级格式化范围(block formatting context) 219
其他浏览器的问题 223
第七章 CSS常用技巧 224
7.1 滑动门技术 224
滑动门的原理 224
当只有文字被放大时 227
一张图片当N个门使用 228
一些可能会被忽略的问题 229
其他的一些应用 231
7.2圆角 233
7.3图片的细节 236
载入中的图片 237
加载不了的图片 238
缩放的图片 239
伪类缩放的图片 240
7.4被放大的文字 245
7.5当前标识 248
视觉标识 248
面包屑(Breadcrumbs) 250
操作步骤 253
7.6居中元素 256
垂直居中多行文字 256
未知大小图片在已知大小容器中垂直和水平居中 258
相对页面垂直和水平居中已知大小的容器 260
7.7隐藏的Tips会出现 262
实现原理 262
图片信息 265
第八章 文字的艺术 268
8.1中文的特殊性 268
8.2缩放机制 269
缩放的文字 270
缩放的盒子 272
8.3行高与基线 274
行高的细节 274
基线 278
文本空间 280
8.4 input里的文字 283
8.5链接的范围 284
额外的点击空间 285
缺少的点击空间 285
8.6不间断的文字 287
8.7省略掉的文字 288
8.8字体的介绍 290
中文字体 290
英文字体 293
8.9语言会影响到字体 296
第九章 细品命名与微格式 298
9.1命名规则 298
9.2命名原则 298
9.3不再陌生的Microformats 300
认识微格式 300
从微格式中提炼知识 302
9.4 ID与CLASS选择谁 304
9.5自定义标签 305
9.6命名的重要性 306
第十章 换个思维来设计 308
10.1消失了文字,看到了彩虹 308
文字变成图片的几种方法 308
文字也可以用Flash来表现 311
10.2用div代替html/body 313
10.3缩放的布局 315
实现原理 315
缩放一半 318
精准em 321
10.4网页是可以用叠的 322
在一屏幕里显示所有内容 322
图片的位置 332
position:absolute的层叠 335
10.5百分比加减固定数值 339
50%+200px 339
50%-200px 342
10.6两列等高——margin负值篇 344
10.7类display:inline-block的应用 345
第十一章 隐藏在浏览器背后的CSS 348
11.1 (X)HTML与CSS校验的意义 348
11.2 IE背后的善良 349
IE常见私有属性 349
滤镜 353
11.3火狐狸的尾巴带着CSS3的味道 360
At-rules规则 360
Properties属性 360
Values属性值 367
11.4其他浏览器的兼容方案 368
第十二章 JavaScript让Web动起来 370
12.1 概念 370
什么是JavaScript 370
ECMAScript是什么 371
什么是DOM 371
什么是BOM 372
想法 372
怎样让JavaScript运行 372
12.2编程基础 373
语法 374
变量 376
基本数据类型 377
数值 377
字符串 378
布尔型 379
表达式与运算符 379
算术运算符 379
关系运算符 380
逻辑运算符 381
赋值运算符 381
基本语句 382
条件语句 382
循环语句 383
函数 384
对象 386
12.3 DOM无处不在 387
把文档表示为树 387
树的节点 388
节点的属性 390
HTML DOM特征 391
12.4事件处理 392
什么是事件 392
Event对象 393
事件的绑定 394
分离 396
12.5只要改变className就可以改变很多——下拉菜单的练习 396
结构的选择 396
分离实现效果 397
想法 401
12.6表单的辅助 402
检查数据 402
隐式提示 403
创建内容——innerHTML VS createElement 406
setTimeout的用处 409
Ajax初体验 410
HTML5的表单元素 411
12.7 class特效 412
第十三章 亲和力 415
13.1概念 415
13.2 Web内容可访问性指南 416
并非所有的内容都是显示的 416
保持原有功能的有效性 421
让文字看得见 422
热键操作 423
导航 428
标题与内容 429
语言与编码 430
亲和力声明 430
建议 431
13.3技术层上的一些亲和力 431
如何让链接变得更有表达能力 431
扩展链接的提示 434
节省步骤 437
图片还是背景图片 440
第十四章 XML的无限变化 442
14.1 XML的作用 442
XML能做什么 442
XML的表现 442
XML+CSS的表现 443
元素的语义 446
XSLT初体验 448
14.2 XPath与XSLT 450
XPath简介 451
XSLT应用XPath 452
程序性转换的XSLT 454
XSLT常见元素 455
XSLT函数document 461
XPath定位 462
定位路径表达式 462
轴 462
节点测试 464
XPath基本表达式 464
XPath常见函数 465
X练习 467
14.3华丽的RSS 467
复习 468
转换时间格式的模板与参数的应用 470
过滤与排序 471
背景色交替 472
显示(X)HTML内容 473
还能做什么? 475
14.4 XML的周边与命运 475
XML Schema 475
WML 476
SVG 477
XML的未来 478
第十五章 简单的实战 480
15.1 创建开源社区系统OpenLab的首页 480
分析结构 481
叠出来的头部 482
一张背景的导航 487
表格无敌 489
隐藏内容 499
显示的变化 501
15.2 Ao.A相册 502
分析结构 503
大背景 503
基本结构 505
图片展示 506
浮动的空白 510
小小的Tip提示 513
IE的兼容问题 515
放弃也是一种美! 519
精准到px 520
让网页动起来——JavaScript 521
那JavaScript要应用在哪些地方呢? 522
那使用JavaScript要注意什么呢? 522
让网页动起来——Flash 524
网页并非会按我们所想的显示 525
网页并不一定要用浏览器看的 527
打印网页 529
15.3架构前端 530
脚本框架 530
模块化样式表 531
模块化(X)HTML 532
文件架构 533
15.4给自己做点什么 534
开始设计属于你自己的网站 534
结构与表现 535
华丽的效果源自哪里? 535
第十六章 最后的建议 538
16.1思维的乐趣 538
坚持独立思考 538
要善于自己发现和解决问题 539
不断丰富知识,提高所掌握知识的质量 539
换个角度思考问题 540
16.2减少重复开发的选择 540
16.3让维护方便点 541
适当的注释 541
API手册 542
16.4以后自学的方向 543
附录 545