走进前端技术栈|深入CSS|青训营笔记

77 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 2 天

课程重点

  1. CSS 代码构成
  2. CSS 使用方法
  3. CSS 流程之选择器组、文本渲染
  4. 调试 CSS

CSS是什么?

用来定义页面元素的样式 eg:字体,颜色,动画等

屏幕截图_20230116_112109.png

在HTML中使用CSS的常用有3种办法

  1. 外链 CSS单独做成文件,通过link标签引入(推荐)
  2. 嵌入 把样式的代码写入HTML
  3. 内联 把属性写在style属性里

image.png

选择器

Selector

  • 按标签名、类名、id
  • 按照属性
  • 按照在DOM树中的位置

通配选择器

'*'匹配所有 image.png

标签选择器

image.png

id选择器

通过id的属性给内容设置样式(且id应该唯一) eg:这里的logo

image.png

类选择器

对同一类型的标签可以用 class

image.png

属性选择器

通过对属性添加[ ]设置样式 image.png

image.png

匹配某个元素的时候生效的属性

eg:

image.png

伪类

在不同状态下定义样式

eg:有无鼠标停顿,是否被访问 image.png

状态性伪类

结构性伪类

根据在DOM树中的位置判断 eg:li:frist-child li:last-child

选择器间的组合

image.png eg: image.png

选择器组

给多个选择器对应相同的方式 eg:对应这些标签都进行设置 image.png

image.png

怎么渲染文本

颜色

RGB模型

写法有二:

image.png

hsl模型

image.png

alpha 透明度

image.png

字体 font-family

从左至右多种字体匹配 image.png

image.png 英文字体先写先渲染

font-size

image.png

字重

image.png

line-height

image.png

white-space属性

image.png nowrap 不换行

pre 保留空格

pre -wrap有换行保留空格

pre-line 合并空格,但保留换行

课程重点

  1. CSS 选择器的特异度
  2. CSS 继承
  3. CSS 求值过程解析
  4. CSS 布局方式及相关技术

选择器优先级问题

image.png 本质:根据特异度决定

越特殊的选择器优先级越高

id(#)>(伪)类.>标签E image.png

继承

.bnt被.bnt primary覆盖

未覆盖的属性则继承下来 image.png

image.png

某些元素不可继承而我们希望继承使用:inherit

image.png

‘*’所有元素

box-sizing:inherit都从父系继承

html{ box-sizing:border-box; } 给html的box-sizing里所有元素设为border-box

下同 给.some-widght设为content-box

如果一直向上都没有继承到,则使用初始值,对于不可继承元素同样适用

初始值 initial

image.png

image.png

布局

image.png

布局相关技术

image.png

image.png

image.png

image.png

image.png

image.png

课程重点

  1. CSS 盒模型 - 行级
  2. CSS 盒模型 - 块级

块级盒子与其他盒子不在一行 行级可以

image.png

块级元素 eg:body,article,div,main display:block 行级元素 eg:span、em、cite display:inline

image.png

inline-block看作一张图一个整体 image.png

行级

image.png

image.png

image.png

image.png

image.png

Flex

主轴与流向相同,侧轴与主轴垂直

image.png

image.png

image.png

image.png

Grid

image.png

image.png

image.png

image.png

image.png

image.png