理解css


ppt地址

css是什么?

级联样式表

css的结构

  • 选择器:选择器用来选中页面中要调整样式的元素,可以是标签,类,id,属性等
  • 属性:用来指定要增加的样式属性
  • 属性值:用来给属性值进行相应设置

css引入方式

  • 外部链接<link ref="stylesheet" href="/aaa/bbb"></link>
  • 内联<style></style>
  • 内部<p style="aa=bb;"></p>

css工作方式

  1. 加载html
  2. 解析html
  3. 加载css同时创建dom树
  4. 解析css,将样式添加到dom树
  5. 展示页面

css选择器种类

  • id选择器
  • 类选择器
  • 后代选择器
  • 属性选择器

组合

  • 直接组合 ab
  • 后代组合a b
  • 父子组合a>b
  • 兄弟组合a~b
  • 相邻选择器a+b

选择器特异度关联到选择器权重

继承

继承的含义就是一些元素会自动继承父元素的属性值,除非显示指定一个值

  • 显示继承:通过给全局样式*添加样式,给html添加样式等,让其后代所有元素都附上该属性

初始值

  • 每个css都有初始值,可以是none,可以是transparent
  • 可以用initial显示指定为初始值

css求值过程

  1. 在解析好dom树和样式规则的前提下
  2. 第一步:筛选,进行样式规则筛选,选择器匹配,属性有效,符合当前media
  3. 第二步:多对一,首先一个属性值可能有多个声明值,根据选择器权重,权重高的在前,如果权重相似,那么后加载的css为最后的到的值
  4. 第三步:处理空值,如果没有设置相应属性的选择器的值,那么就赋值为继承值或初始值,最后保证得到的属性值一定不为空
  5. 第四步:规则化,将em,和百分数,小数转换为px整数值,最后得到实际应用值

布局

根据元素,容器,兄弟结点算出每个元素的位置空间

width和height计算结果

常规流

行级排版

positon定位


Author: pkq
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source pkq !
  TOC