本书涵盖以下内容:
选择符、特指度和层叠。
值、单位、字体和文本属性。
内边距、边框、轮廓和外边距。
颜色、背景和渐变。
浮动和定位。
弹性盒布局。
全新的栅格布局系统。
2D和3D变形、过渡和动画。
滤镜、混合、裁剪和遮罩。
媒体查询和特性查询。 |
如果你是一名网页设计师或者应用开发者,对复杂的页面样式、改进可访问性,以及节省时间和精力感兴趣,就不能错过这本书。
Eric A.
Meyer是国际公认的 HTML、CSS和Web标准领域的专家,是Complex
Spiral Consulting公司的创始人,还是微格式运动的发起人之一,以及设计领域系列会议An Event Apart的创始人之一。他是本书前一版和其他多本关于CSS和设计的图书的作者。他的个人网站为meyerweb.com。
Estelle
Weyl是开放Web布道师和社区工程师,从1999年起就开始开发符合标准且具有可访问性的网站。她的博客地址是standardista.com,那里的文章讨论一切与前端有关的话题,包括CSS3、HTML5、JavaScript性能、可访问性和移动Web开发。她喜欢躺在家中的沙发上编程,也经常游历世界,并在各种会议上演讲。
上册 |
前言 |
第 1 章 CSS和文档 |
1.1 Web样式简介 |
1.2 元素 |
1.2.1 置换元素和非置换元素 |
1.2.2 元素的显示方式 |
1.3 把 CSS 应用到 HTML 上 |
1.3.1 link 标签 |
1.3.2 style 元素 |
1.3.3 @import 指令 |
1.3.4 HTTP 链接 |
1.3.5 行内样式 |
1.4 样式表中的内容 |
1.4.1 标记 |
1.4.2 规则的结构 |
1.4.3 厂商前缀 .25 |
1.4.4 处理空白 .26 |
1.4.5 CSS 注释 27 |
1.5 媒体查询 .28 |
1.5.1 用法 .28 |
1.5.2 简单的媒体查询 28 |
1.5.3 媒体类型 .29 |
1.5.4 媒体描述符 .30 |
1.5.5 媒体特性描述符和值的类型 32 |
1.6 特性查询 .32 |
1.7 小结 35 |
第2章 选择符 .37 |
2.1 样式的基本规则.37 |
2.1.1 元素选择符 .38 |
2.1.2 声明和关键字 .39 |
2.2 群组 42 |
2.2.1 群组选择符 .42 |
2.2.2 群组声明 .44 |
2.2.3 二者结合 .45 |
2.2.4 在旧浏览器中使用新元素.46 |
2.3 类选择符和 ID 选择符 47 |
2.3.1 类选择符 .47 |
2.3.2 多个类 50 |
2.3.3 ID 选择符 .51 |
2.3.4 在类选择符和 ID 选择符之间选择52 |
2.4 属性选择符 53 |
2.4.1 简单属性选择符 53 |
2.4.2 根据精准的属性值选择 .55 |
2.4.3 根据部分属性值选择 .57 |
2.4.4 不区分大小写的标识符 .62 |
2.5 根据文档结构选择 63 |
2.5.1 理解父子关系 .63 |
2.5.2 后代选择符 .65 |
2.5.3 选择子元素 .68 |
2.5.4 选择紧邻同胞元素 69 |
2.5.5 选择后续同胞 .71 |
2.6 伪类选择符 71 |
2.6.1 拼接伪类 .72 |
2.6.2 结构伪类 .73 |
2.6.3 动态伪类 .86 |
2.6.4 UI 状态伪类 90 |
2.6.5 :target 伪类 .96 |
2.6.6 :lang 伪类 97 |
2.6.7 否定伪类 .98 |
2.7 伪元素选择符 100 |
2.7.1 装饰首字母 101 |
2.7.2 装饰首行 102 |
2.7.3 对 ::first-letter 和 ::first-line 的限制
. 103 |
2.7.4 装饰(或创建)前置和后置内容元素 . 103 |
2.8 小结 . 104 |
第 3 章 特指度和层叠 .105 |
3.1 特指度
105 |
3.1.1 声明和特指度 107 |
3.1.2 通用选择符的特指度 109 |
3.1.3 ID 和属性选择符的特指度 . 109 |
3.1.4 行内样式的特指度 . 109 |
3.1.5 重要性 . 110 |
3.2 继承 . 111 |
3.3 层叠 . 114 |
3.3.1 按权重和来源排序 . 115 |
3.3.2 按特指度排序 117 |
3.3.3 按前后位置排序 . 117 |
3.3.4 CSS 之外的表现提示 . 119 |
3.4 小结 . 120 |
第 4 章 值和单位 .121 |
4.1 关键字、字符串和其他文本值 . 121 |
4.1.1 关键字 . 121 |
4.1.2 字符串 . 124 |
4.1.3 URL
125 |
4.1.4 图像 . 126 |
4.1.5 标识符 . 127 |
4.2 数字和百分数 127 |
4.2.1 整数 . 127 |
4.2.2 数字 . 128 |
4.2.3 百分数 . 128 |
4.2.4 弹性值 . 128 |
4.3 距离 . 128 |
4.3.1 绝对长度单位 129 |
4.3.2 分辨率单位 131 |
4.3.3 相对长度单位 132 |
4.4 计算值
138 |
4.5 属性值
139 |
4.6 颜色 . 140 |
4.6.1 具名颜色 140 |
4.6.2 RGB 和 RGBa 颜色 141 |
4.6.3 HSL 和 HSLa 颜色 . 146 |
4.6.4 颜色关键字 149 |
4.7 角度 . 149 |
4.8 时间和频率
150 |
4.9 位置 . 151 |
4.10 自定义值 . 151 |
第 5 章 字体 155 |
5.1 字体族
155 |
5.1.1 使用通用字体族 . 156 |
5.1.2 指定字体族 157 |
5.2 使用 @font-face 160 |
5.2.1 必须的描述符 161 |
5.2.2 其他字体描述符 . 166 |
5.2.3 组合描述符 169 |
5.3 字重 . 172 |
5.3.1 字重的工作方式 . 173 |
5.3.2 增大字重 175 |
5.3.3 减小字重 178 |
5.3.4 font-weight 描述符 179 |
5.4 字号 . 180 |
5.4.1 绝对大小 181 |
5.4.2 相对大小 183 |
5.4.3 百分数和 em . 184 |
5.4.4 字号的继承 185 |
5.4.5 使用长度单位 188 |
5.4.6 自动调整字号 189 |
5.5 字形 . 191 |
5.6 字体拉伸
195 |
5.7 字距调整
198 |
5.8 字体变形
198 |
5.8.1 Level 3 新增的值 200 |
5.8.2 font-variant 描述符 . 201 |
5.9 字体特性
202 |
5.10 字体合成 . 204 |
5.11 font 属性 . 206 |
5.11.1 加入行高 207 |
5.11.2 正确使用简写 . 208 |
5.11.3 使用系统字体 . 209 |
5.12 字体匹配机制 210 |
5.13 小结
212 |
第 6 章 文本属性 .213 |
6.1 缩进和行内对齐 213 |
6.1.1 缩进文本 214 |
6.1.2 文本对齐 217 |
6.1.3 对齐最后一行 220 |
6.2 块级对齐
222 |
6.2.1 行的高度 222 |
6.2.2 纵向对齐文本 226 |
6.3 单词间距和字符间距 . 231 |
6.3.1 单词间距 231 |
6.3.2 字符间距 233 |
6.3.3 对齐方式对间距的影响 234 |
6.4 文本转换
235 |
6.5 文本装饰
237 |
6.6 文本渲染效果 241 |
6.7 文本阴影
242 |
6.8 处理空白
244 |
6.9 换行和断字
248 |
6.10 书写模式 . 254 |
6.10.1 设定书写模式 . 254 |
6.10.2 改变文本方向 . 258 |
6.10.3 声明方向 259 |
6.11 小结
261 |
第 7 章 视觉格式化基础 .262 |
7.1 元素框基础
262 |
7.1.1 重要概念概览 263 |
7.1.2 容纳块 . 264 |
7.2 调整元素的显示方式 . 265 |
7.2.1 改变显示方式 266 |
7.2.2 块级框 . 268 |
7.2.3 横向格式化 270 |
7.2.4 横向格式化属性 . 271 |
7.2.5 使用 auto 272 |
7.2.6 多个 auto 273 |
7.2.7 负外边距 275 |
7.2.8 百分数 . 276 |
7.2.9 置换元素 277 |
7.2.10 纵向格式化 278 |
7.2.11 纵向格式化属性 . 279 |
7.2.12 百分数高度 280 |
7.2.13 自动调整高度 . 282 |
7.2.14 折叠纵向外边距 . 283 |
7.2.15 负外边距和折叠 . 285 |
7.2.16 列表项目 287 |
7.3 行内元素
288 |
7.3.1 行布局 . 288 |
7.3.2 基本术语和概念 . 290 |
7.3.3 行内格式化 292 |
7.3.4 行内非置换元素 . 293 |
7.3.5 行内置换元素 305 |
7.3.6 行内块级元素 309 |
7.3.7 流动显示方式 312 |
7.3.8 contents 显示方式 . 313 |
7.3.9 display 的其他值 314 |
7.3.10 计算值 . 314 |
7.4 小结 . 315 |
第 8 章 内边距、边框、轮廓和外边距 .316 |
8.1 基本元素框
316 |
8.2 内边距
319 |
8.2.1 复值 . 321 |
8.2.2 单边内边距 323 |
8.2.3 内边距的百分数值 . 324 |
8.2.4 行内元素的内边距 . 326 |
8.2.5 置换元素的内边距 . 328 |
8.3 边框 . 329 |
8.3.1 边框的式样 330 |
8.3.2 边框宽度 334 |
8.3.3 边框颜色 337 |
8.3.4 简写的边框属性 . 340 |
8.3.5 整个边框 342 |
8.3.6 行内元素的边框 . 343 |
8.3.7 圆角边框 344 |
8.3.8 图像边框 352 |
8.4 轮廓 . 369 |
8.4.1 轮廓式样 369 |
8.4.2 轮廓宽度 370 |
8.4.3 轮廓颜色 371 |
8.4.4 唯一的轮廓简写属性 373 |
8.4.5 轮廓与边框的区别 . 373 |
8.5 外边距
375 |
8.5.1 外边距的长度值 . 377 |
8.5.2 外边距的百分数值 . 377 |
8.5.3 单边外边距属性 . 378 |
8.5.4 外边距折叠 379 |
8.5.5 负外边距 381 |
8.5.6 行内元素的外边距 . 383 |
8.6 小结 . 385 |
第 9 章 颜色、背景和渐变 386 |
9.1 颜色 . 386 |
9.1.1 前景色 . 386 |
9.1.2 对边框的影响 388 |
9.1.3 对表单元素的影响 . 390 |
9.1.4 继承颜色 391 |
9.2 背景 . 391 |
9.2.1 背景色 . 391 |
9.2.2 裁剪背景 395 |
9.2.3 背景图 . 398 |
9.2.4 背景定位 402 |
9.2.5 改变定位框 411 |
9.2.6 背景重复方式(或不重复) . 415 |
9.2.7 背景粘附 425 |
9.2.8 控制背景图的尺寸 . 430 |
9.2.9 写为一个属性 438 |
9.2.10 多个背景 440 |
9.3 渐变 . 447 |
9.3.1 线性渐变 447 |
9.3.2 径向渐变 461 |
9.3.3 处理渐变图像 473 |
9.3.4 循环渐变 475 |
9.4 盒子投影
479 |
9.5 小结 . 482 |
|
下册 |
第10章 浮动及其形状 |
第11章 定位 |
第12章 弹性盒布局 |
第13章 栅格布局 |
第14章 CSS中的表格布局 |
第15章 列表和生成的内容 |
第16章 变形 |
第17章 过渡 |
第18章 动画 |
第19章 滤镜、混合、裁剪和遮罩 |
第20章 针对特定媒体的样式 |
附录A 支持动画的属性 |
附录B 基本属性参考 |
附录C 颜色对照表 |