深入理解CSS | 青训营笔记

72 阅读2分钟

总览

总览.png

基础知识

盒模型.png

布局和定位

css布局概述.png

层叠上下文

层叠上下文是对HTML的三维构想,将元素沿着垂直屏幕的虚构z轴排开

层叠上下文.png

变形,过渡,动画

transform变形

  • 2D

2D.png

  • 3D

3D.png

transition过渡

过渡.png animation动画

动画.png 性能.png

响应式设计

原则

优先选用流式分布

使用响应式图片,匹配尺寸,节省带宽

使用媒体查询为不同的设备类型做适配

给移动端设备设置简单,统一的视口

使用相对长度,em,rem,vm做长度度量

媒体查询

媒体查询允许某些样式只在页面满足特定条件时才生效可将其媒体类型(如screen,print)及媒体特性(如视口宽度,设备方向:横向或纵向)作为约束条件

设备像素,参考像素,移动设备视口

设备像素(物理像素):显示器上绘制的最小单位,通过屏幕控制每个像素点的颜色,使屏幕显示出不同的图像。

dpi,ppi.png

css像素.png 设备像素比:未缩放状态下,设备像素和CSS像素的初始比例关系

布局视口(viewport);页面HTML元素的包含块

viewport.png

相对长度的使用

em

em.png

rem

rem.png

vm和vh

vm,vh.png

CSS生态

语言增强

CSS预处理器

css预处理器.png 提高研发效率:

  1. 自定义变量——提高可复用
  2. 嵌套,作用域——避免全局污染,结构层次清晰,减少复杂组合选择器
  3. mixins,继承——提高可复用,可维护性
  4. 操作符、条件/循环语句、自定义函数——提高可编程能力,增加灵活性

scss、less,stylus对比 对比.png

CSS后处理器

css后处理器.png

postcss机制

postcss.png

工程架构

CSS模块化

css模块化.png

CSS in JS

将应用的CSS样式写在JavaScript中,利用js动态生成CSS 机制.png

pros,cons.png

原子化CSS

原子化CSS是一种CSS的架构方式,它倾向于小巧且用途单一的class,并以视觉效果进行命名

  1. 实用工具库优先
  2. 按需生成
  3. 支持配置样式规则和自定义插件

原子化css.png

总结

总结.png