当前位置: 首页 > news >正文

前端知识点总结(自参)

BFC

块级格式化上下文。BFC元素不会影响到其它环境中的布局。

触发BFC的条件

  • 根元素或其它包含它的元素
  • 浮动元素 (元素的 float 不是 none)
  • 绝对定位元素 (元素具有 position 为 absolute 或 fixed)
  • 内联块 (元素具有 display: inline-block)
  • 表格单元格 (元素具有 display: table-cell,HTML表格单元格默认属性)
  • 表格标题 (元素具有 display: table-caption, HTML表格标题默认属性)
  • 具有overflow 且值不是 visible 的块元素
  • 弹性盒(flex或inline-flex)
  • display: flow-root
  • column-span: all

BFC元素特性

  • 内部的盒会在垂直方向一个接一个排列(可以看作BFC中有一个的常规流)
  • 处于同一个BFC中的元素相互影响,可能会发生外边距重叠
  • 每个元素的margin box的左边,与容器块border box的左边相接触(对于从左往右的格式化,否则相反),即使存- 在浮动也是如此
  • BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素,反之亦然
  • 计算BFC的高度时,考虑BFC所包含的所有元素,连浮动元素也参与计算
  • 浮动盒区域不叠加到BFC上

BFC解决的问题

  • 垂直外边距重叠问题
  • 去除浮动(BFC元素会计算内部浮动子元素高度)
  • 自适用两列布局(float + overflow)

盒模型

W3C盒模型

元素大小=margin+border+padding+width(内容)

IE盒模型

元素大小=margin+width(border+padding+内容·)

闭包

闭包就是能够读取其他函数内部变量的函数。

作用域链

由多个执行上下文的变量对象构成的链表就叫做作用域链。

Event Loop

Event Loop即事件循环,是指浏览器或Node的一种解决javaScript单线程运行时不会阻塞的一种机制。JS中有两种任务类型:微任务(microtask)和宏任务(macrotask)(在ES6中,microtask称为 jobs,macrotask称为 task)。js主线程在运行时会产生执行栈,先运行script宏任务,遇到微任务或宏任务就先添加进任务队列,等script宏任务执行完毕会去检查任务队列有没有微任务。有则执行完全部的微任务再执行下一个宏任务,如果没有微任务则继续执行下一个宏任务,这样循环直到任务队列清空。

MVVM

MVVM是一种项目架构模式。分成三个部分,Model层代表数据模型,View代表UI组件,ViewModel是View和Model层的桥梁,数据会绑定到viewModel层并自动将数据渲染到页面中,视图变化的时候会通知viewModel层更新数据

http://www.lryc.cn/news/934.html

相关文章:

  • [ 靶场环境片 ] kali-linux采用Docker 搭建 pikachu(特别详细)
  • 阿里6面,成功唬住面试官拿了27K,软件测试面试也没有传说中那么难吧....
  • 为什么静默安装未经过数字签名的驱动是不可行的?
  • Caused by: java.sql.SQLException: ORA-28040: 没有匹配的验证协议
  • Dubbo3简单使用
  • Redis未授权漏洞蜜罐模拟与捕获分析
  • Spring Security Oauth2.0认证授权
  • 安卓小游戏:贪吃蛇
  • CUDA中的图内存节点
  • 你真的看好低代码开发吗?
  • 一篇带你MySQL运维
  • 《嵌入式 – GD32开发实战指南》第22章 SPI
  • 一个优质软件测试工程师的简历应该有的样子(答应我一定要收藏起来)
  • C++ 浅谈之 STL Deque
  • Koa2-项目中的基本应用
  • Flask入门(2):配置
  • Linux--fork
  • 计算机组成原理(一)
  • 【SpringBoot】实现Async异步任务
  • Node =>Express学习
  • QT基础入门【布局篇】消除控件之间的间隔
  • vue脚手架 element-ui spring boot 实现图片上传阿里云 并保存到数据库
  • 【FPGA】Verilog:组合电路 | 3—8译码器 | 编码器 | 74LS148
  • GLP-1类药物研发进展-销售数据-上市药品前景分析
  • C++远程监控系统接收端- RevPlayMDIChildWnd.cpp
  • QT之OpenGL深度测试
  • 用LCR测试仪测试无线充电系统中的线圈
  • 华为、南卡和漫步者蓝牙耳机怎么选?国产高性价比蓝牙耳机推荐
  • MySQl学习(从入门到精通12)
  • 08讲 | 基于STM32单片机NBIOT定位实战项目