深入CSS | 青训营

80 阅读2分钟

这是我参与「第六届青训营」笔记创作活动的第3天。活动详情:# 第六届青训营笔记伴读 | 升级学习体验,高效掌握知识

本节课程通过具体案例对于选择器的特异度展开讲解,在此基础上进一步引出 CSS 继承与布局的话题,对其定义及相关技术分别作出介绍。

本节课程的四个要点:

  1. CSS 选择器的特异度

  2. CSS 继承

  3. CSS 求值过程解析

  4. CSS 布局方式及相关技术

CSS

  1. Cascading Style Sheets,层叠样式表,用于定义页面元素的样式,包括但不限于字体、颜色、位置。大小、动画效果等。

  2. 在页面中使用CSS的方式有三种:

  • 外链:通过link标签引入(实现内容与样式的分离)。
  • 嵌入:将css代码放入style标签内,存储在html页面。
  • 内联:在需要修改样式的标签内部通过style="( 属性:属性值;)"的形式为该标签设置css样式。
  1. 网页浮动塌陷的解决办法
  • 当父盒子未设置高度,滋贺子被授予浮动脱离文档流时空间释放,会导致父元素的高度为0。
  • 为父元素设置溢出隐藏(overflow:hidden),触发BFC块级格式化上下文,浮动元素也计算高度。
  • 在浮动元素后添加一个div块,样式设置为clear:both;
   .box::after{
   content:"";
   display:block;
   clear:both;
   }

Promise

Promise中的类方法/静态方法:

  • promise.resolve()=new Promise((resolve,reject)=>resolve());
  • promise.reject()=new Promise((resolve,reject)=>reject());
  • 当预知结果为resolve或reject时可采用该方式。
  • Promise.all([Promise1,Promise2,Promise3]).then(res=>()):all方法传入一个可迭代对象,当状态全部为resolve时执行后续的then方法。若存在任何一个对象状态为rejected,则会回调.catch方法。
  • Promise.allSettled:只有当可迭代的所有Promise都有结果时会返回所有的值
  • Promise.race:优先获取第一个返回的结果
  • Promise.any:只获取第一个状态为fulfilled的结果 若全为rejected则会报错。