20201020岳浩天

学习知识

BFC

谈谈你对 BFC 规范的理解有哪些?(BFC是什么?)
BFC(Block formatting context)直译为"块级格式化上下文"。它是一个独立的渲染区域,只有 Block-level box 参与, 它规定了内部的 Block-level Box 如何布局,并且与这个区域外部毫不相干
BFC(块级格式化上下文),一个创建了新的BFC的盒子是独立布局的,盒子内元素的布局不会影响盒子外面的元素。在同一个BFC中的两个相邻的盒子在垂直方向发生margin重叠的问题
BFC是指浏览器中创建了一个独立的渲染区域,该区域内所有元素的布局不会影响到区域外元素的布局,这个渲染区域只对块级元素起作用
BFC 布局规则
a. 内部的 Box 会在垂直方向,一个接一个地放置
b. Box 垂直方向的距离由 margin 决定。属于同一个 BFC 的两个相邻 Box 的 margin 会发生重叠
c. 每个元素的 margin box 的左边, 与包含块 border box 的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此
d. BFC 的区域不会与 float box 重叠
e. BFC 就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此
f. 计算 BFC 的高度时,浮动元素也参与计算
触发 BFC
A. 根元素
B. float 属性不为 none
C. position 为 absolute 或 fixed
D. display 为 inline-block, table-cell, table-caption, flex, inline-flex
E. overflow 不为 visible

数组去重

var arr1=[];
for (var i=0;i<arr.length;i++){      
      if(arr1.indexOf(arr[i])==-1){
           arr1.push(arr[i])
      }
}
console.log(arr1)
for(var i=0;i<arr.length;i++){
      for(var j=i+1;j<arr.length;j++){
            if(arr[i]==arr[j]){
                  arr.splice(j,1);
              j--;
            }
      }
}
console.log(arr)
for(var i=0;i<arr.length;i++){
      for(var j=i+1;j<arr.length;j++){
            if(arr[i]==arr[j]){
                  arr.splice(j,1);
              j--;
            }
      }
}
console.log(arr)

心得

今天晚上重新梳理父子组件传值,兄弟组件传值,还得多练。router部分还有点陌生

标签

评论

this is is footer