木易杨_Daliy_156

第 156 题:求最终 left、right 的宽度

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<div class="container">
<div class="left"></div>
<div class="right"></div>
</div>

<style>
* {
padding: 0;
margin: 0;
}
.container {
width: 600px;
height: 300px;
display: flex;
}
.left {
flex: 1 2 300px;
background: red;
}
.right {
flex: 2 1 200px;
background: blue;
}
</style>

注:此题和 155 题 left、right 样式有些不同
因为300+200小于600,则flex-grow有效,需要计算剩余空间。而如果子元素的综合大于父元素时,需要使用flex-shrink来计算如果缩小。
剩余的空间:600 - (300 + 200) = 100。
子元素的 flex-grow 的值分别为 1,2, 剩余空间用3等分来分
100 / 3 = 33.3333333
所以 left = 300 + 1 * 33.33 = 333.33
right = 200 + 2 * 33.33 = 266.67

CSS

UI

被安排做了一段时间的ui,感觉css果然不是个简单的活。尤其是水平居中和垂直居中,真的是亘古不变的刚需。

水平居中

块级元素

子绝父相

1
2
3
4
5
6
7
.parent {
position: 'absolute',
}
.son {
position: 'relative',
margin: '0 auto'
}

####

行内元素

垂直居中

正则

常用的正则方法

  • XXX.replace()
  • [].map

常用的正则表达式

查出字符串中的重复字符

去掉字符串中的重复字符

去掉字符串中的空格和换行

去掉字符串中的

数组的操作方法

数组操作方法的分类

主要是分为可以改变原数组的,不改变原数组的。

改变原数组的方法

  • push
  • pop
  • shift
  • unshift
  • splice
  • reverse
  • sort
  • ES6: fill
  • ES6: copyWithin

不改变原数组的方法

  • slice
  • join
  • concat
  • toLocaleString
  • toString
  • indexOf
  • lastIndexOf
  • includes

遍历方法

  • every
  • some
  • map
  • filter
  • forEach
  • for of
  • for
  • reduce
  • find & findIndex
  • keys & values & entries

React

React

此处只写一些不好具体分来的点儿,详情请看其他文章。

React基本要素

从React官网中可以看出,React的基本要素可以分为以下几类。

  • JSX
  • 组件 &Props
  • State & 声明周期