注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络图形图像、多媒体、网页制作CSS新世界

CSS新世界

CSS新世界

定 价:¥129.90

作 者: 张鑫旭 著
出版社: 人民邮电出版社
丛编项:
标 签: 暂缺

ISBN: 9787115562845 出版时间: 2021-07-01 包装: 平装
开本: 16开 页数: 596 字数:  

内容简介

  本书是“CSS世界三部曲”的最后一部。这是一本关于CSS的进阶读物,专门讲CSS3及其之后版本的新特性。在本书中,作者结合自己多年的从业经验,讲解CSS基础知识,并充分考虑前端开发者的需求,以CSS新特性的历史背景为线索,去粗取精,注重细节,深入浅出地介绍了上百个CSS新特性。此外,作者专门还为本书开发了配套网站,用于书中实例效果的在线展示和问题答疑。本书的所有内容都是作者经过深入思考和探索后提炼出来的,知识点多且内容丰富,注重技术细节、经验分享和解决问题的思路。本书的主要目标是帮助前端开发者突破CSS技能提升的瓶颈,非常适合具有一定CSS基础的前端开发者阅读。

作者简介

  “CSS新世界三部曲”(《CSS世界》《CSS选择器世界》《CSS新世界》作者,前端开发工程师,国内知名前端博客“鑫空间-鑫生活”博主,目前就职于阅文集团用户体验设计部(YUX),担任前端技术专家。他从2007年开始接触前端,十多年来一直工作在前端开发一线,在HTML/CSS等与交互体验关系密切的领域花了大量的时间学习和研究,有比较多的心得体会。

图书目录

第 1章 概述 1

1.1 CSS3出现的历史和背景 1

1.2 模块化的CSS新世界 2

第 2章 需要提前了解的知识 4

2.1 互通互联的CSS数据类型 4

2.1.1 为什么要关注CSS数据类型 4

2.1.2 几个常见数据类型的简单介绍 5

2.2 学会看懂CSS属性值定义语法 7

2.2.1 学习CSS属性值定义语法的好处 7

2.2.2 CSS属性值定义语法详解 8

2.3 了解CSS全局关键字属性值 12

2.3.1 用过都说好的继承关键字inherit 12

2.3.2 可以一用的初始值关键字initial 12

2.3.3 了解一下不固定值关键字unset 14

2.3.4 我个人很喜欢的恢复关键字revert 15

2.4 指代所有CSS属性的all属性 17

2.5 CSS新特性的渐进增强处理技巧 18

2.5.1 直接使用CSS新特性 18

2.5.2 利用属性值的语法差异实现兼容 19

2.5.3 借助伪类或伪元素区分浏览器的技巧 21

2.5.4 @supports规则下的渐进增强处理 23

2.5.5 对CSS新特性渐进增强处理的总结 26

第3章 从增强已有的CSS属性开始 28

3.1 贯穿全书的尺寸体系 28

3.1.1 从width:fit-content声明开始 29

3.1.2 stretch、available和fill-available关键字究竟用哪个 32

3.1.3 深入了解min-content关键字 35

3.1.4 快速了解max-content关键字 39

3.2 深入了解CSS逻辑属性 40

3.2.1 CSS逻辑属性有限的使用场景 41

3.2.2 inline/block与start/end元素 43

3.2.3 width/height属性与inline-size/block-size逻辑属性 44

3.2.4 由margin/padding/border演变而来的逻辑属性 44

3.2.5 text-align属性支持的逻辑属性值 45

3.2.6 最有用的CSS逻辑属性inset 46

3.3 在CSS边框上做文章 47

3.3.1 昙花一现的CSS多边框 47

3.3.2 独一无二的border-image属性 47

3.3.3 border-image属性与渐变边框 57

3.4 position属性的增强 60

3.4.1 深入了解sticky属性值与黏性定位 61

3.4.2 position:sticky声明的精彩应用—层次滚动 65

3.5 font-family属性和@font-face规则新特性 66

3.5.1 system-ui等全新的通用字体族 66

3.5.2 local()函数与系统字体的调用 73

3.5.3 unicode-range属性的详细介绍 74

3.5.4 woff/woff2字体 75

3.5.5 font-display属性与自定义字体的加载渲染 77

3.6 字符单元的中断与换行 79

3.6.1 使用keep-all属性值优化中文排版 80

3.6.2 break-all属性值的问题和line-break属性 81

3.6.3 hyphens属性与连字符 83

3.6.4 与精确换行的控制 85

3.6.5 overflow-wrap:anywhere声明有什么用 86

3.7 text-align属性相关的新特性 88

3.7.1 match-parent等新属性值 88

3.7.2 text-align属性的字符对齐特性 89

3.8 text-decoration属性全新升级 90

3.8.1 text-decoration属性现在是一种缩写 90

3.8.2 text-decoration属性的累加特性 91

3.8.3 唯一实用的wavy波浪线 91

3.8.4 可能需要text-underline-position:under声明 92

3.8.5 更需要text-underline-offset属性 94

3.8.6 讲一讲text-decoration-skip属性的故事 95

3.9 color属性与颜色设置 97

3.9.1 148个颜色关键字 98

3.9.2 transparent关键字 99

3.9.3 currentColor关键字 100

3.9.4 RGB颜色和HSL颜色的新语法 101

3.10 必学必会的background属性新特性 103

3.10.1 最实用的当属background-size属性 103

3.10.2 background属性最成功的设计—多背景 108

3.10.3 background-clip属性与背景显示区域限制 110

3.10.4 background-clip:text声明与渐变文字效果 111

3.10.5 background-origin属性与背景定位原点控制 112

3.10.6 space和round平铺模式 113

3.10.7 可以指定background-position的起始方位了 114

3.11 outline相关新属性outline-offset 116

3.12 cursor属性新增的手形效果 117

3.12.1 放大手形zoom-in和缩小手形zoom-out简介 117

3.12.2 抓取手形grab和放手手形grabbing简介 118

第4章 更细致的样式表现 119

4.1 透明度控制属性opacity 119

4.1.1 opacity属性的叠加计算规则 119

4.1.2 opacity属性的边界特性与应用 120

4.2 深入了解圆角属性border-radius 124

4.2.1 了解border-radius属性的语法 124

4.2.2 弄懂圆角效果是如何产生的 126

4.2.3 border-radius属性渲染border边框的细节 127

4.2.4 border-radius属性的高级应用技巧 129

4.3 box-shadow盒阴影 131

4.3.1 inset关键字与内阴影 131

4.3.2 不要忽略第四个长度值 133

4.3.3 多阴影特性与图形绘制 134

4.3.4 box-shadow动画与性能优化 137

4.4 CSS 2D变换 138

4.4.1 从基本的变换方法说起 138

4.4.2 transform属性的若干细节特性 141

4.4.3 元素应用transform属性后的变化 144

4.4.4 深入了解矩阵函数matrix() 148

4.4.5 常常被遗忘的transform-origin属性 152

4.4.6 scale()函数缩放和zoom属性缩放的区别 153

4.4.7 了解全新的translate、scale和rotate属性 154

4.5 简单实用的calc()函数 155

4.5.1 关于calc()函数 155

4.5.2 了解min()、max()和clamp()函数 157

第5章 更强的视觉表现 160

5.1 CSS渐变 160

5.1.1 深入了解linear-gradient()线性渐变 160

5.1.2 深入了解radial-gradient()径向渐变 165

5.1.3 了解conic-gradient()锥形渐变 170

5.1.4 重复渐变 173

5.2 CSS 3D变换 174

5.2.1 从常用的3D变换函数说起 174

5.2.2 必不可少的perspective属性 176

5.2.3 用translateZ()函数寻找透视位置 177

5.2.4 指定perspective透视点的两种写法 178

5.2.5 理解perspective-origin属性 179

5.2.6 transform-style:preserve-3d声明的含义 180

5.2.7 backface-visibility属性的作用 180

5.2.8 值得学习的旋转木马案例 182

5.2.9 3D变换与GPU加速 184

5.3 CSS过渡 184

5.3.1 你可能不知道的transition属性知识 185

5.3.2 了解三次贝塞尔时间函数类型 188

5.3.3 transition与visibility属性的应用指南 190

5.4 CSS动画 192

5.4.1 初识animation属性 193

5.4.2 @keyframes规则的语法和特性 194

5.4.3 动画命名与数据类型 196
5.4.4 负延时与即时播放效果 198

5.4.5 reverse和alternate关键字的区别和应用 200

5.4.6 动画播放次数可以是小数 203

5.4.7 forwards和backwards属性值究竟是什么意思 204

5.4.8 如何暂停和重启CSS动画 207

5.4.9 深入理解steps()函数 209

5.4.10 标签嵌套与动画实现的小技巧 212

第6章 全新的布局方式 214

6.1 分栏布局 214

6.2 弹性布局 224

6.3 网格布局 263

6.4 CSS Shapes布局 308

第7章 不同设备的适配与响应 317

7.1 @media规则 317

7.2 环境变量函数env() 328

7.3 rem和vw单位与移动端适配最佳实践 330

7.4 使用touch-action属性控制设备的触摸行为 335

7.5 image-set()函数与多倍图设置 337

第8章 CSS的变量函数var()与自定义属性 340

8.1 CSS变量的语法、特性和细节 340

8.2 CSS自定义属性的设置与获取 348

8.3 使用content属性显示CSS自定义属性值的技巧 349

8.4 CSS变量的自定义语法技术简介 350

第9章 文本字符处理能力的升级 354

9.1 文字的美化与装饰 354

9.2 文字的旋转与阅读方向 365

9.3 文本字符的尺寸控制 370

9.4 文字渲染与字体呈现 374

9.5 字体特征和变体 382

9.6 可变字体 395

第 10章 图片等多媒体的处理 402

10.1 图片和视频元素的内在尺寸控制 402

10.2 使用image-orientation属性纠正图片的方向 406

10.3 image-rendering属性与图像的渲染 408

10.4 不常用的图像类型函数 411

第 11章 更绚丽的视觉表现 415

11.1 深入了解CSS滤镜属性filter 416

11.2 姐妹花滤镜属性backdrop-filter 429

11.3 深入了解CSS混合模式 433

11.4 混合模式属性background-blend-mode 448

11.5 使用isolation: isolate声明隔离混合模式 454

第 12章 更丰富的图形处理 457

12.1 超级实用的CSS遮罩 457

12.2 同样实用的CSS剪裁属性clip-path 478

12.3 -webkit-box-reflect属性与倒影效果的实现 492

12.4 使用offset属性实现元素的不规则运动 496

第 13章 用户行为与体验增强 508

13.1 滚动行为相关 508

13.2 点击行为相关 519

13.3 拉伸行为相关 521

13.4 输入行为相关 523

13.5 选择行为相关 524

13.6 打印行为相关 527

13.7 性能增强 532

第 14章 SVG元素的CSS控制 541

14.1 使用CSS属性直接绘制SVG图形 541

14.2 CSS属性下的填充设置 545

14.3 CSS属性下的描边设置 550

14.4 CSS属性下的标记设置 555

第 15章 Houdini是CSS新的未来吗 564

15.1 了解CSS Paint API 564

15.2 了解CSS Properties & Values API 568

15.3 了解CSS Parser API 570

15.4 详细了解CSS Layout API 571

15.5 快速了解CSS Typed OM 577

15.6 简单了解Animation Worklet 578

15.7 了解Font Metrics API 579

本目录推荐