[第7课-理解CSS|青训营笔记]

70 阅读3分钟

7-理解CSS

一、概述

  1. 解决排版和装饰问题
  2. CSS2:分离。CSS做表现;HTML做内容
  3. CSS2.1:修正、扩展
  4. CSS3:规范模块化

二、基础知识

  1. CSS(Cascady [层叠] Style Slects [样式表] )

    1. Cascady [层叠]
    2. Style Slects [样式表]
    3. Cascady [层叠] ——>解决冲突<——Style Slects [样式表]
  2. 层叠规则(优先级从高到低)

    1. 样式表束缚

      1. 用户代理样式表 !important
      2. 用户样式表 !important
      3. 作者样式表!important
      4. 作者样式表 developer
      5. 用户样式表 很少
      6. 用户代理样式 浏览器默认样式
    2. 选择器优先级

      1. 内联>id>class=attribute=pseudo-class>type=pseudo-element
    3. 源码位置

    4. 注意

      1. 少用id
      2. 尽量不用pseudo(应该)
      3. 自己定义的样式放在样式库之后
  3. 继承 inherit

    1. CSS的值

      1. 文字类(string)
      2. 数值
      3. 函数生成
    2. 单位

      1. 长度

        1. 绝对长度
        2. 相对长度
      2. 角度

      3. 时间

      4. 分辨率

  4. 盒模型:视觉格式化模型

    1. display 控制盒子模型

    2. boxsizing;width,height:控制盒子大小、计算方式

    3. overflow:控制盒中内容六

    4. position:控制定位

    5. visibility:是否可见

    6. 任意盒子

      1. 外部显示类型
      2. 内部显示类型
  5. 模型实例 (自己取的标题)

    1. 三角形:border
    2. 固定比例矩形3:4:padding-bottom 75%
    3. 某种矩形:margin auto
    4. 渐变边框: (没来得及记,看不懂嘞)
    5. 负外边框

三、布局

(一)杂七杂八

  1. 常规流

    1. 外...类型block——块级盒子
    2. 外...类型inline(PPT上确实是“外”)——内联级盒子
  2. 块级格式上下文

    BFC

    1. 弹性盒子

    一维布局

    1. grid

    网络布局

  3. Flex——一维;Grid——二维

  4. position 定位

(二)、层叠上下文

  1. render layer

  2. index用变量去合理(去“定位”?

  3. 变形、过度、动画

    1. 2D
    2. 3D:transform、preserve、perspective
    3. transition过渡;animation动画
  4. 布局——绘制——合成

(三)、响应式设计

  1. 媒体查调(尽量减少断点)

(四)、设备像素、参考像素、移动端设备配置(好像是移动什么配置)

  1. 设备像素(物理像素)

  2. 像素密度

    1. dpi:每英寸多少
    2. ppi:每英寸多少像素数
  3. CSS像素

  4. PPR=设备像素/CSS像素

  5. 移动端viewpoint

(五)相对长度的使用

  1. em(某种情况下会8无限放大(* 1.5* 1.5...)或缩小(* 0.5 * 0.5),不常用)

  2. rem

    1. vm 视图宽度(1%)
    2. vh 视图高度

四、CSS生态**

(一) 语言**——CSS预处理器

  1. 自定义变量
  2. 嵌套、作用域
  3. mixins、继承
  4. 操作符

(二) CSS后处理器

  1. postcs

(三)CSS模块化

  1. BEM
  2. vue-loader
  3. scoped

(四)工程架构

  1. css-in-js

  2. -styled component 机制浅析

  3. pos &cons

    1. 一定的学习成本
    2. 代码风格和传统相差较大,可读性降低
  4. 原子化CSS

      1. 实用工具库优先
      2. 按需生成
      3. 支持配置样式规则&自定义机制
    1. 优点

      1. 减少CSS体积
      2. 原子类命名
      3. 复用率高
    2. 缺点

      1. 增加原子化类名长度
      2. 初始使用有学习、记忆成本

总结

我去讲得太快了,记得太草了。第一遍听,完全听不懂呀。

一下子接触新的知识新的领域,难度“飚”升。