新書推薦:
《
超越百岁看这本就够了
》
售價:NT$
254.0
《
亚洲戏剧史·南亚卷
》
售價:NT$
653.0
《
中国历代竹器图谱与数字活化
》
售價:NT$
2540.0
《
EDA技术与设计(第2版)
》
售價:NT$
387.0
《
揉碎浪漫(全两册)
》
售價:NT$
320.0
《
古籍善本
》
售價:NT$
2448.0
《
人民币国际化报告2024:可持续全球供应链体系与国际货币金融变革
》
售價:NT$
398.0
《
道德经新注 81幅作者亲绘哲理中国画,图文解读道德经
》
售價:NT$
653.0
|
編輯推薦: |
(1) 资深Web前端专家历时2载的经验与心血之作,旨在根据最新CSS3规范撰写最权威的CSS3学习资料和备查手册(2) 理论知识系统且全面,以图解的方式讲解CSS3的各项功能和特性,包含大量实战案例,直观易懂,实战性强
|
內容簡介: |
本书是国内著名的Web前端专家历时2载的心血之作,根据最新的CSS3撰写,融入了作者在CSS领域近10年的使用经验,旨在将本书打造成为CSS3领域最权威和实用的专业著作,供没有经验的读者系统学习,供有经验的读者参考备查。
本书理论知识系统全面,详细讲解了选择器、边框、背景、文本、颜色、盒模型、伸缩布局盒模型、多列布局、渐变、过渡、动画、媒体、响应Web设计、Web字体等主题下涵盖的所有CSS3新特性,所有这些都巧妙地融入到案例中,而不是枯燥的理论讲解;讲解方式直观易懂,以图解的方式巧妙地展示了这些新特性;实战性强,既为每个知识点精心设计了小案例,也有综合性的大案例,所有案例都非常详尽,有功能需求分析、设计思路和完整代码,还有最终的效果展示。
|
關於作者: |
廖伟华(网名:大漠) 资深Web前端工程师,W3cplushttp:www.w3cplus.com创始人,目前就职于Ctrip UED。中国Drupal社区核心成员之一。对HTML5、CSS 3和XHTML,Sass等前端脚本语言有非常深入的认识和丰富的实践经验,尤其专注对CSS 3的研究,是国内最早研究和使用CSS 3技术的一批人。现在还关注Web产品策划、交互设计、SEO以及移动端开发。2012年4月份期刊发表《Twitter Bootstrap:前端框架利器》。
|
目錄:
|
Contents?目 录
前 言
第1章 揭开CSS3的面纱 1
1.1 什么是CSS3 1
1.1.1 CSS3的新特性 2
1.1.2 CSS3的发展状况 4
1.1.3 现在能使用CSS3吗 5
1.1.4 使用CSS3有什么好处 5
1.2 浏览器对CSS3的支持状况 6
1.2.1 经典回顾:图说浏览器大战 7
1.2.2 浏览器的市场份额 8
1.2.3 主流浏览器对CSS3支持状况 9
1.3 渐进增强 11
1.3.1 渐进增强与优雅降级 11
1.3.2 渐进增强的优点 12
1.4 CSS3的现状及未来 13
1.4.1 谁在使用CSS3 13
1.4.2 CSS3的未来 14
1.5 本章小结 14
第2章 CSS3选择器 15
2.1 认识CSS选择器 15
2.1.1 CSS3选择器的优势 15
2.1.2 CSS3选择器分类 16
2.2 基本选择器 16
2.2.1 基本选择器语法 16
2.2.2 浏览器兼容性 17
2.2.3 实战体验:使用基本选择器 17
2.2.4 通配选择器 18
2.2.5 元素选择器 18
2.2.6 ID选择器 18
2.2.7 类选择器 19
2.2.8 群组选择器 20
2.3 层次选择器 21
2.3.1 层次选择器语法 21
2.3.2 浏览器兼容性 21
2.3.3 实战体验:使用层次选择器选择元素 21
2.3.4 后代选择器 23
2.3.5 子选择器 23
2.3.6 相邻兄弟选择器 24
2.3.7 通用兄弟选择器 25
2.4 动态伪类选择器 25
2.4.1 动态伪类选择器语法 26
2.4.2 浏览器兼容性 26
2.4.3 实战体验:美化按钮 27
2.5 目标伪类选择器 29
2.5.1 目标伪类选择器语法 29
2.5.2 浏览器兼容性 30
2.5.3 实战体验:制作手风琴效果 30
2.6 语言伪类选择器 33
2.6.1 语言伪类选择器语法 33
2.6.2 浏览器兼容性 34
2.6.3 实战体验:定制不同语言版本引文风格 34
2.7 UI元素状态伪类选择器 36
2.7.1 UI元素状态伪类选择器语法 36
2.7.2 浏览器兼容性 36
2.7.3 实战体验:Bootstrap的表单元素UI状态 37
2.8 结构伪类选择器 41
2.8.1 重温HTML的DOM树 41
2.8.2 结构伪类选择器语法 42
2.8.3 浏览器兼容性 43
2.8.4 结构伪类选择器中的n是什么 44
2.8.5 结构伪类选择器的使用方法详解 47
2.8.6 实战体验:CSS3美化表格 61
2.9 否定伪类选择器 66
2.9.1 否定伪类选择器语法 66
2.9.2 浏览器兼容性 67
2.9.3 实战体验:改变图片效果 67
2.10 伪元素 69
2.10.1 伪元素::first-letter 69
2.10.2 伪元素::first-line 70
2.10.3 伪元素::before和::after 70
2.10.4 伪元素::selection 72
2.11 属性选择器 73
2.11.1 属性选择器语法 73
2.11.2 浏览器兼容性 74
2.11.3 属性选择器的使用方法详解 75
2.11.4 实战体验:创建个性化链接样式 81
2.12 本章小结 84
第3章 CSS3边框 85
3.1 CSS3边框简介 85
3.1.1 边框的基本属性 85
3.1.2 边框的类型 86
3.1.3 谁在使用CSS3边框 88
3.2 CSS3边框颜色属性 88
3.2.1 border-color属性的语法及参数 88
3.2.2 浏览器兼容性 90
3.2.3 border-color属性的优势 90
3.2.4 实战体验:立体渐变边框效果 91
3.3 CSS3图片边框属性 91
3.3.1 border-image属性的语法及参数 92
3.3.2 border-image属性使用方法 92
3.3.3 浏览器兼容性 99
3.3.4 border-image属性的优势 100
3.3.5 实战体验:按钮圆角阴影效果 100
3.4 CSS3圆角边框属性 105
3.4.1 border-radius属性的语法及参数 105
3.4.2 border-radius属性使用方法 107
3.4.3 浏览器兼容性 114
3.4.4 border-radius属性的优势 115
3.4.5 实战体验:制作特殊图形 115
3.5 CSS3盒子阴影属性 118
3.5.1 box-shadow属性的语法及参数 118
3.5.2 box-shadow属性使用方法 119
3.5.3 浏览器兼容性 129
3.5.4 box-shadow属性的优势 130
3.5.5 实战体验:制作3D搜索表单 130
3.6 本章小结 133
第4章 CSS3背景 134
4.1 CSS3背景属性简介 134
4.1.1 背景的基本属性 134
4.1.2 与背景相关的新增属性 137
4.2 CSS3背景原点属性 137
4.2.1 background-origin属性的语法及参数 137
4.2.2 background-origin属性使用方法 138
4.2.3 浏览器兼容性 140
4.3 CSS3背景裁切属性 141
4.3.1 background-clip属性的语法及参数 141
4.3.2 background-clip属性使用方法 143
4.3.3 浏览器兼容性 147
4.4 CSS3背景尺寸属性 148
4.4.1 background-size属性的语法及参数 148
4.4.2 background-size属性使用方法 149
4.4.3 浏览器兼容性 152
4.4.4 实战体验:制作全屏背景 153
4.5 内联元素背景图像平铺循环方式 154
4.6 CSS3多背景属性 154
4.6.1 CSS3多背景语法及参数 155
4.6.2 CSS3多背景的优势 156
4.6.3 浏览器兼容性 156
4.6.4 实战体验:制作花边框 157
4.7 本章小结 159
第5章 CSS3文本 160
5.1 CSS3文本简介 160
5.2 CSS3文本阴影属性 161
5.2.1 text-shadow属性的语法及参数 162
5.2.2 浏览器兼容性 162
5.2.3 实战体验:制作立体文本 163
5.3 CSS3溢出文本属性 166
5.3.1 text-overflow属性的语法及参数 166
5.3.2 浏览器兼容性 166
5.3.3 text-overflow属性使用方法 167
5.3.4 实战体验:制作固定区域的博客列表 168
5.4 CSS3文本换行 170
5.4.1 word-wrap属性 170
5.4.2 word-break属性 173
5.4.3 white-space属性 177
5.4.4 文本换行技巧 179
5.4.5 文本换行技术对比 180
5.5 本章小结 180
☆第6章 CSS3颜色特性 181
6.1 网页中的色彩特性 181
6.1.1 网页色彩的表现原理 181
6.1.2 Web页面的安全色 182
6.1.3 色彩模式 183
6.2 CSS3透明属性 184
6.2.1 opacity属性的语法及参数 184
6.2.2 opacity浏览器兼容性 185
6.2.3 实战体验:制作透明过渡色块 185
6.3 CSS3颜色模式 187
6.3.1 RGBA颜色模式 187
6.3.2 HSL颜色模式 190
6.3.3 HSLA颜色模式 194
6.3.4 RGBA和HSLA颜色模式之间的选择 196
6.3.5 RGBAHSLA的IE兼容方案 196
6.3.6 RGBAHSLA滤镜格式 197
6.4 本章小结 197
第7章 CSS3盒模型 198
7.1 CSS盒模型简介 198
7.1.1 什么是盒模型 198
7.1.2 重置盒模型解析模式 199
7.2 CSS3盒模型属性 200
7.2.1 box-sizing属性的语法及参数 200
7.2.2 浏览器兼容性 201
7.2.3 实战体验:box-sizing拯救了布局 202
7.3 CSS3内容溢出属性 209
7.3.1 overflow-x和overflow-y属性的语法及参数 209
7.3.2 浏览器兼容性 209
7.4 CSS3自由缩放属性 210
7.4.1 resize属性的语法及参数 210
7.4.2 浏览器兼容性 210
7.4.3 实战体验:修改文本域随意调整大小的功能 210
7.5 CSS3外轮廓属性 211
7.5.1 outline属性的语法及参数 211
7.5.2 浏览器兼容性 212
7.5.3 outline和border的对比 212
7.5.4 实战体验:模仿边框效果 213
7.6 本章小结 213
第8章 CSS3伸缩布局盒模型 214
8.1 Flexbox模型基础知识 214
8.1.1 CSS中的布局模式 214
8.1.2 Flexbox模型的功能 215
8.1.3 Flexbox模型中的术语 215
8.1.4 Flexbox模型规范状态 218
8.1.5 Flexbox模型浏览器兼容性 218
8.1.6 Flexbox模型语法变更 219
8.2 旧版本Flexbox模型的基本使用 221
8.2.1 伸缩容器设置display 222
8.2.2 伸缩流方向box-orient 224
8.2.3 布局顺序box-direction 226
8.2.4 伸缩换行box-lines 229
8.2.5 主轴对齐box-pack 232
8.2.6 侧轴对齐box-align 237
8.2.7 伸缩性box-flex 242
8.2.8 显示顺序box-ordinal-group 246
8.2.9 实战体验:box制作自适应的三列等高布局 249
8.3 混合版本Flexbox模型的基本使用 253
8.3.1 伸缩容器设置display 253
8.3.2 伸缩流方向flex-direction 254
8.3.3 伸缩换行flex-wrap 257
8.3.4 伸缩流方向与换行flex-flow 259
8.3.5 主轴对齐flex-pack 259
8.3.6 侧轴对齐flex-align 262
8.3.7 堆栈伸缩行flex-line-pack 266
8.3.8 伸缩性flex 271
8.3.9 显示顺序flex-order 273
8.4 新版本Flexbox模型的基本使用 275
8.4.1 伸缩容器display 275
8.4.2 伸缩流方向flex-direction 276
8.4.3 伸缩换行flex-wrap 276
8.4.4 伸缩流方向与换行flex-flow 277
8.4.5 主轴对齐justify-content 277
8.4.6 侧轴对齐align-items和align-self 278
8.4.7 堆栈伸缩行align-content 280
8.4.8 伸缩性flex 281
8.4.9 显示顺序order 285
8.5 综合案例:跨浏览器的三列布局 288
8.6 本章小结 292
第9章 CSS3多列布局 293
9.1 CSS3多列布局简介 293
9.1.1 浏览器兼容性 293
9.1.2 CSS3多列布局的属性 294
9.2 CSS3多列布局基本属性 295
9.2.1 columns属性的语法及参数 295
9.2.2 浏览器兼容性 295
9.2.3 实战体验:Web页面的多列布局 296
9.3 CSS3多列布局列宽属性 297
9.3.1 column-width属性的语法及参数 297
9.3.2 实战体验:浏览器根据窗口宽度变化调整列数 298
9.4 CSS3多列布局列数属性 302
9.4.1 column-count属性的语法及参数 302
9.4.2 实战体验:显示固定列数 302
9.5 CSS3多列布局列间距属性 303
9.5.1 column-gap属性的语法及参数 304
9.5.2 实战体验:设置列间距 304
9.6 CSS3多列布局列边框样式属性 306
9.6.1 column-rule属性的语法及参数 306
9.6.2 实战体验:设置列边框 307
9.7 CSS3多列布局跨列属性 309
9.7.1 column-span属性的语法及参数 310
9.7.2 实战体验:文章标题跨列显示 310
9.8 CSS3多列布局列高度属性 311
9.9 本章小结 311
☆第10章 CSS3渐变 312
10.1 CSS3渐变简介 312
10.1.1 什么是色标 312
10.1.2 浏览器兼容性 313
10.2 CSS3线性渐变 314
10.2.1 CSS3线性渐变语法与参数 315
10.2.2 CSS3 线性渐变的基本用法 317
10.2.3 自定义CSS3线性渐变 324
10.2.4 实战体验:CSS3制作渐变按钮 325
10.3 CSS3径向渐变 333
10.3.1 CSS3径向渐变语法 333
10.3.2 CSS3径向渐变的属性参数 334
10.3.3 CSS3径向渐变的基本用法 335
10.3.4 实战体验:CSS3径向渐变制作圆形图标按钮 350
10.4 CSS3重复渐变 353
10.4.1 CSS3重复线性渐变 353
10.4.2 CSS3重复径向渐变 354
10.4.3 实战体验:制作记事本纸张效果 354
10.5 综合案例:CSS3渐变制作纹理背景 355
10.6 本章小结 357
第11章 CSS3变形 358
11.1 CSS3变形简介 358
11.1.1 CSS变形属性及函数 358
11.1.2 浏览器兼容性 359
11.2 CSS变形属性详解 360
11.2.1 transform属性 360
11.2.2 transform-origin属性 363
11.2.3 transform-style属性 370
11.2.4 perspective属性 372
11.2.5 perspective-origin属性 377
11.2.6 backface-visibility属性 380
11.3 CSS3 2D变形 385
11.3.1 2D位移 385
11.3.2 2D缩放 390
11.3.3 2D旋转 394
11.3.4 2D倾斜 396
11.3.5 2D矩阵 398
11.4 CSS3 3D变形 403
11.4.1 3D位移 404
11.4.2 3D缩放 406
11.4.3 3D旋转 407
11.4.4 3D矩阵 409
11.5 多重变形 410
11.5.1 2D多重变形制作立方体 410
11.5.2 3D多重变形制作立方体 412
11.6 综合案例:3D变形制作产品信息展示 413
11.7 本章小结 416
☆第12章 CSS3过渡 417
12.1 CSS3过渡简介 417
12.1.1 如何创建简单的过渡 417
12.1.2 浏览器兼容性 418
12.1.3 CSS3过渡属性 418
12.2 CSS3过渡子属性详解 420
12.2.1 指定过渡属性transition-property 421
12.2.2 指定过渡所需时间transition-duration 423
12.2.3 指定过渡函数transition-timing-function 425
12.2.4 指定过渡延迟时间transition-delay 431
12.2.5 多个CSS3过渡效果 433
12.3 CSS3触发过渡 434
12.3.1 伪元素触发 434
12.3.2 媒体查询触发 436
12.3.3 JavaScript触发 436
12.4 CSS3过渡技巧 437
12.4.1 一个完整的过渡 437
12.4.2 可过渡的属性 438
12.4.3 优先的过渡属性 439
12.4.4 过渡的开始和结束为auto 439
12.4.5 隐式过渡 439
12.4.6 开关状态的不同过渡方式 440
12.4.7 几乎无限延迟的过渡 441
12.4.8 通过硬件加速过渡更加流畅 441
12.4.9 过渡和伪元素 442
12.5 综合案例:纯CSS3制作CSS Dock导航效果 443
12.6 本章小结 449
第13章 CSS3动画 450
13.1 CSS3动画简介 450
13.1.1 浏览器兼容性 450
13.1.2 CSS3动画属性 451
13.2 关键帧 452
13.2.1 @keyframes的作用 452
13.2.2 @keyframes的语法 453
13.2.3 浏览器兼容性 454
13.3 CSS中为元素应用动画 454
13.3.1 使用@keyframes声明动画 454
13.3.2 调用@keyframes声明的动画 456
13.4 CSS3动画子属性详解 457
13.4.1 调用动画animation-name 457
13.4.2 设置动画播放时间animation-duration 458
13.4.3 设置动画播放方式animation-timing-function 458
13.4.4 设置动画开始播放的时间animation-delay 458
13.4.5 设置动画播放次数animation-iteration-count 458
13.4.6 设置动画播放方向animation-direction 458
13.4.7 设置动画的播放状态animation-play-state 459
13.4.8 设置动画时间外属性animation-fill-mode 459
13.5 综合案例:全屏Slidershow效果 459
13.6 本章小结 464
第14章 媒体特性与Responsive设计 465
14.1 媒体类型 465
14.1.1 Media Type设备类型 465
14.1.2 媒体类型引用方法 466
14.2 媒体特性 467
14.2.1 Media Query和CSS属性集合 467
14.2.2 常用Media Query设备特性 468
14.2.3 浏览器兼容性 468
14.2.4 Media Query使用方法 468
14.3 Responsive布局概念 470
14.3.1 Responsive设计特点 471
14.3.2 Responsive中的术语 471
14.3.3 Responsive布局技巧 473
14.3.4 meta标签 474
14.4 本章小结 475
第15章 嵌入Web字体 476
15.1 @font-face模块介绍 476
15.1.1 浏览器兼容性 476
15.1.2 @font-face语法 477
15.1.3 使用字体图标的优势 477
15.2 实现@font-face 478
15.2.1 使用@font-face自定义字体 478
15.2.2 声明字体来源 479
15.2.3 创建各种字体 481
15.2.4 调用字体 483
15.3 综合案例:将图标转换成Web字体 483
15.3.1 创建一个图标字体 483
15.3.2 准备插图 484
15.3.3 导入到IcoMoon 485
15.3.4 从IcoMoon中导出字体 485
15.3.5 下载字体文件 485
15.3.6 调用字体 486
15.4 本章小结 486
|
內容試閱:
|
第1章
揭开CSS3的面纱
如果关注前端方面的技术,那么对CSS一定不会陌生,你肯定听说过CSS3。在使用CSS3之前,应该对这个新一代样式表语言的来龙去脉有个基本了解。
在本章中,你将知道CSS3与CSS2.1的区别,以及当前市面上主流浏览器、移动端浏览器对CSS3支持的情况。对于尚不完全支持CSS3的浏览器,将会为大家引入一个渐进增强的概念,用一些CSS方法来模拟CSS3的实现方法。最后给大家简单介绍一些CSS3引入的新特性及其未来的前景。
1.1 什么是CSS3
CSS3并不是一门新的语言。如果接触过CSS就知道,CSS是创建网页的另一个独立但并非不重要的一部分。CSS是种层叠样式表,是一种样式语言,用来告诉浏览器如何渲染你的Web页面。
CSS3是CSS规范的最新版本,在CSS2.1的基础上增加了很多强大的新功能,以帮助开发人员解决一些问题,并且不再需要非语义标签、复杂的JavaScript脚本以及图片,例如圆角功能、多背景、透明度、阴影等功能等。CSS2.1是单一的规范,而CSS3被划分成几个模块组,每个模块组都有自己的规范。这样的好处是整个CSS3的规范发布不会因为部分难缠的部分而影响其他模块的推进。
现在先来看看CSS3激动人心的新特性。
1.1.1 CSS3的新特性
CSS3规范并不是独立的,它重复了CSS的部分内容,但在其基础上进行了很多的增补与修改。CSS3与之前的几个版本相比,其变化是革命性的,虽然它的部分属性还不能够被浏览器完美的支持,但却让我们看到网页样式发展的前景,让我们更具有方向感、使命感。
CSS3新特性非常多,这里挑选一些被浏览器支持较为完美、更具实用性的新特性。
1.强大的CSS3选择器
使用过jQuery的人都知道,jQuery的选择器功能强大,使用方便,CSS3选择器和jQuery选择器非常类似。允许设计师通过选择器直接指定需要的HTML元素,而不需要在HTML中添加不必要的类名、ID等。使用CSS3选择器,能在Web的制作中更完美地做到结构与表现分离,设计师能轻松地设计出简洁、轻量级的Web页面,并且能更好地维护和修改样式。
2.抛弃图片的视觉效果
Web中最常见的效果包括圆角、阴影、渐变背景、半透明、图片边框等。而这样的视觉效果在CSS中都是依赖于设计师制作图片或者JavaScript脚本来实现的。CSS3的一些新特性可以用来创建一些特殊的视觉效果,后面的章节将为大家展现这些新特性是如何实现这些视觉效果。
3.背景的变革
如果说CSS中的背景给你带来太多的限制,那么CSS3将带来革命性的变化。CSS3不再局限于背景色、背景图像的运用,新特性中添加了多个新的属性值,例如background-origin、background-clip、background-size,此外,还可以在一个元素上设置多个背景图片。这样,如果要设计比较复杂的Web页面效果,就不再需要使用一些多余标签来辅助实现了。举个例子,要实现CSS中的滑动门效果,在CSS中基本上要添加2~3个额外的标签来辅助实现,那么CSS3中的这些新特性能够在一个标签中完成同等的效果。
4.盒模型变化
盒模型在CSS中是重中之重,CSS中的盒模型只能实现一些基本的功能,对于一些特殊的功能需要基于JavaScript来实现。而在CSS3中这一点得到了很大的改善,设计师可以直接通过CSS3来实现。例如,CSS3中的弹性盒子,这个属性将给大家引入一种全新的布局概念,能轻而易举实现各种布局,特别是在移动端的布局,它的功能更是强大。大家将在第7章、第8章见识它的神功。
5.阴影效果
阴影主要为分两种:文本阴影(text-shadow)和盒子阴影(box-shadow)。文本阴影在CSS中已经存在,但没有得到广泛的运用。CSS3延续了这个特性,并进行了新的定义,该属性提供了一种新的跨浏览器方案,使文本看起来更醒目。盒子阴影的实现在CSS中就有点苦不堪言,为了实现这样的效果,需要新增标签、图片,而且效果还不一定完美。CSS3的box-shadow将打破这种局面,可以轻易地为任何元素添加盒子阴影。
6.多列布局与弹性盒模型布局
CSS3引入了几个新的模块用于更方便地创建多列布局。
“多列布局”(Multi-column Layout)模块描述了如何像报纸、杂志那样,把一个简单的区块拆分成多列,第9章为大家介绍这个模块的运用。“弹性盒模型布局”(Flexible Box Layout)模块能让区块在水平、垂直方向对齐,能让区块自适应屏幕大小,相对于CSS的浮动布局、inline-block布局、绝对定位布局来说,它显得更加方便与灵活。缺点是,这两个模块在一些浏览器中还不被支持,但随着技术的发展革新,这一刻终将到来。
7.Web字体和Web Font图标
浏览器对Web字体有诸多限制,Web Font图标对于设计师来说更奢侈。CSS3重新引入@font-face,对于设计师来说无疑是件好事。@font-face是链接服务器上字体的一种方式,这些嵌入的字体能变成浏览器的安全字体,不再担心用户没有这些字体而无法正常显示的问题,从此告别用图片代替特殊字体的设计时代。
8.颜色与透明度
CSS3颜色模块的引入,实现了制作Web效果时不再局限于RGB和十六进制两种模式。CSS3增加了HSL、HSLA、RGBA几种新的颜色模式。在Web设计中,能轻松实现某个颜色变得再亮一点或者再暗一点。其中HSLA和RGBA还增加了透明通道,能轻松地改变任何一个元素的透明度。另外,还可以使用opacity属性来制作元素的透明度。从此制作透明度不再依赖图片或者JavaScript脚本了。
9.圆角与边框的新法
圆角是CSS3中使用最多的一个属性,原因很简单:圆角比直线性更美观,而且不会与设计产生任何冲突。与CSS制作圆角不同之处是,CSS3无须添加任何标签元素与图片,也不需借用任何JavaScript脚本,一个属性就能搞定。对于边框,在CSS中仅局限与边框的线型、粗细、颜色的设置,如果需要特殊的边框效果,只能使用背景图片来模仿。CSS3的border-image属性使元素边框的样式变得丰富起来,还可以使用该属性实现类似background的效果,对边框进行扭曲、拉伸和平铺等。
10.盒容器的变形
在CSS时代,让某个元素变形是一个可望而不可及的想法,为了实现这样的效果,需要写大量的JavaScript代码。CSS3引进了一个变形属性,可以在2D或者3D空间里操作盒容器的位置和形状,例如旋转、扭曲、缩放或者移位。我们把这些效果称为“变形”,大家将在第11章体验这些新特性。
11.CSS3过渡与动画交互效果
CSS3的“过渡”(transition)特性能在Web制作中实现一些简单的动画效果,让某些效果变得更具流线性、平滑性。而CSS3“动画”(animation)特性能够实现更复杂的样式变化,以及一些交互效果,而不需要使用任何Flash或JavaScript脚本代码。
12.媒体特性与Responsive布局
CSS3的媒体特性可以实现一种响应式(Responsive)布局,使布局可以根据用户的显示终端或设备特征选择对应的样式文件,从而在不同的显示分辨率或设备下具有不同的布局渲染效果,特别是在移动端上的实现更是一种理想的做法。
|
|