第1章 基础知识 1
1.1 设计代码的结构 2
1.1.1 使用有意义的标记 2
1.1.2 文档类型、DOCTYPE切换和浏览器模式 7
1.2 为样式找到目标 9
1.2.1 常用的选择器 10
1.2.2 通用选择器 11
1.2.3 高级选择器 11
1.2.4 层叠和特殊性 14
1.2.5 继承 16
1.3 规划、组织和维护样式表 17
1.3.1 对文档应用样式 17
1.3.2 对代码进行注释 18
1.3.3 样式指南 20
1.3.4 组织样式表以便简化维护 21
1.4 小结 22
第2章 可视化格式模型 23
2.1 框模型概述 23
2.1.1 IE/Win和框模型 25
2.1.2 空白边叠加 25
2.2.1 视觉格式化模型 27
2.2 定位概述 27
2.2.2 相对定位 28
2.2.3 绝对定位 29
2.2.4 浮动 31
2.3 小结 36
第3章 背景图像和图像替换 37
3.1 背景图像基础 37
3.2 圆角框 39
3.2.1 固定宽度的圆角框 40
3.2.2 山顶角 44
3.3.1 简单的CSS阴影 46
3.3 阴影 46
3.3.2 来自Clagnut的阴影方法 49
3.3.3 模糊阴影 49
3.3.4 洋葱皮阴影 52
3.4 图像替换 54
3.4.1 FIR 55
3.4.2 Phark 55
3.4.3 Gilder/Levin方法 56
3.4.4 IFR与sIFR 56
3.5 小结 58
第4章 对链接应用样式 59
4.1 简单的链接样式 59
4.2 让下划线更有趣 60
4.3 突出显示不同类型的链接 62
4.4 创建按钮和翻转 65
4.4.1 简单的翻转 66
4.4.2 具有图像的翻转 66
4.4.3 Pixy样式的翻转 67
4.5 已访问链接样式 68
4.6 纯CSS工具提示 70
4.7 小结 71
第5章 对列表应用样式和创建导航条 73
5.1 基本列表样式 74
5.2 创建垂直导航条 75
5.3 在导航条中突出显示当前页面 77
5.4 创建水平导航条 78
5.5 简化的“滑动门”标签页式导航 80
5.6 CSS图像映射 82
5.7 远距离翻转 90
5.8 对于定义列表的简短说明 93
5.9 小结 94
第6章 对表单和数据表格应用样式 95
6.1 对数据表格应用样式 95
6.1.1 表格特有的元素 97
6.1.2 数据表格标记 98
6.1.3 对表格应用样式 99
6.1.4 添加视觉样式 100
6.1.5 添加其他样式 101
6.2 简单的表单布局 101
6.2.1 有用的表单元素 102
6.2.2 基本布局 103
6.2.3 其他元素 104
6.2.4 修饰 106
6.3 复杂的表单布局 107
6.3.1 可访问的数据输入元素 108
6.3.2 多列复选框 109
6.3.3 表单反馈 111
6.4 小结 113
第7章 布局 115
7.1 让设计居中 115
7.1.1 使用自动空白边让设计居中 116
7.1.2 使用定位和负值空白边让设计居中 117
7.2 基于浮动的布局 118
7.2.1 两列的浮动布局 118
7.2.2 三列的浮动布局 121
7.3 固定宽度、流体和弹性布局 122
7.3.1 流体布局 122
7.3.2 弹性布局 124
7.3.3 弹性-流体混合布局 126
7.3.4 流体和弹性图像 127
7.4 faux列 129
7.5 小结 132
第8章 招数和过滤器 133
8.1 招数和过滤器简介 134
8.1.1 关于招数和过滤器的一个警告 134
8.1.2 明智地使用招数 135
8.2 过滤单独的样式表 136
8.2.1 IE的有条件注释 136
8.2.2 带通过滤器 137
8.3.1 子选择器招数 139
8.3 过滤单独的规则和声明 139
8.3.2 属性选择器招数 140
8.3.3 星号HTML招数 141
8.3.4 IE/Mac注释反斜线招数 142
8.3.5 转义属性招数 142
8.3.6 Tantek的框模型招数 143
8.3.7 修改后的简化框模型招数 143
8.3.8 !important和下划线招数 144
8.3.9 Owen招数 144
8.4 小结 145
第9章 bug和bug修复 147
9.1 bug捕捉 148
9.2 bug捕捉的基本知识 150
9.2.1 隔离问题 151
9.2.2 创建基本测试案例 152
9.2.3 修复问题,而不是修复症状 153
9.2.4 请求帮助 153
9.3 拥有布局 153
9.3.1 什么是布局 154
9.3.2 布局有什么效果? 154
9.4 常见bug及其修复方法 156
9.4.1 双空白边浮动bug 156
9.4.2 3像素文本偏移bug 156
9.4.3 IE 6重复字符bug 159
9.4.4 IE 6躲躲猫bug 160
9.4.5 相对容器中的绝对定位 160
9.4.6 停止对IE的批评 161
9.5 小结 162
实例研究1 More Than Doodles 163
CS1.1 关于这个实例研究 164
CS1.2 用后代选择器控制内容区域 165
CS1.2.1 XHTML 165
CS1.2.2 三列布局 166
CS1.2.3 两列布局 167
CS1.2.5 隐藏不需要的列 168
CS1.2.4 单列布局 168
CS1.3 对列进行浮动 169
CS1.3.1 计算 169
CS1.3.2 将列浮动到正确的位置 170
CS1.4 根据主体类突出显示当前页面 172
CS1.5 列的drop-in框 173
CS1.6 直角和圆角——自己决定 174
CS1.6.1 一般的直角 174
CS1.6.2 为特殊效果做准备 175
CS1.7 透明的定制角和边框 175
CS1.7.1 图像 176
CS1.7.2 CSS 177
CS1.8 使用类组合来确定操作目标 178
CS1.9 使用图像类和例外 180
CS1.9.1 默认图像 180
CS1.9.2 拥有的图像 180
CS1.9.3 比较大的图像 181
CS1.10 处理链接 183
CS1.10.1 了解边栏链接 183
CS1.10.2 带符号的已访问链接 183
CS1.10.3 突出显示外部链接 185
CS1.11.1 形成阴影 186
CS1.11 浮动的阴影(图库) 186
CS1.11.2 对图像进行浮动 187
CS1.12 小结 188
实例研究2 Tuscany Luxury Resorts 189
CS2.1 关于这个实例研究 189
CS2.2 流体布局 190
CS2.2.1 主体和容器 192
CS2.2.2 报头 192
CS2.2.3 内容和边栏 193
CS2.2.4 页脚 195
CS2.2.5 解决流体布局的问题 196
CS2.3.1 位置属性(top、bottom、left、right) 197
CS2.3 使用绝对定位对准元素 197
CS2.3.2 堆放次序(z-index) 199
CS2.4 背景图像技术 200
CS2.4.1 将上半部分分成三份 201
CS2.4.2 使背景“无懈可击” 202
CS2.5 图像替换 204
CS2.5.1 徽标图像替换 204
CS2.5.2 首字母大写图像替换 206
CS2.6 流体图像 207
CS2.7 为多个元素使用一个列表项 209
CS2.8 小结 212