理解CSS|青训营笔记(2)

42 阅读1分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 3 天。 116b8fdb35ca45698a24e47f009a3b11_tplv-k3u1fbpfcp-zoom-in-crop-mark_3024_0_0_0.webp

特异度(选择器的特殊程度)

有多个选择器定位到同一部分时,那一条规则生效?

image.png

特异度(Specificity)
特异度高的优先展示:id选择器>类选择器>标签选择器

继承

某些属性会自动继承其父元素的计算值(比如:color),除非显示指定一个值。

另外也有不可继承属性,但是也可以让其继承父级属性,设置属性值为inherit即可。(也叫作显示继承)

初始值

CSS中,每个属性都有一个初始值,比如:background-color的初始值为transparent
也可以使用initial关键字显示充值为初始值,比如:background-color:initial

CSS求值过程

image.png image.png image.png

计算值:分析CSS能够计算得到的一个最具体的值,比如:2em可以计算为2倍当前位置单个字的像素大小。
使用值:实际布局时使用的值,不会再有相对值或关键字,比如:400.2px(是在实际布局时才能决定的值)。
继承元素中,子级元素最终继承到的是父级元素的计算值。

布局

  • 确定内容的大小和位置的算法。
  • 依据元素、容器、兄弟节点和内容等信息来计算。

布局的相关技术:

  1. 常规流:
    • 行级
    • 块级
    • 表格布局
    • FlexBox
    • Grid布局
  2. 浮动
  3. 绝对定位

一个水平居中的方法: margin:auto;
【注意】:如果使用上下两个box,上方盒子下边一个margin同时下方盒子上边一个margin,那么最终两个盒子之间的距离是取两个margin中较大值,并非两个margin之和。(margin collapse)