举个例子:
#div0{
width:200px;
display:flex;
height:500px;
}
#div0 div:nth-child(1){
flex:0 1 150px;
}
#div0 div:nth-child(2){
flex:0 1 250px;
}
用他的错误计算方法是
200-(150+250)=-200
-200/2=-100
div1:150-100=50
div2:250-100=150
而正确值是75和125
#div0{
width:200px;
display:flex;
height:500px;
}
#div0 div:nth-child(1){
flex:0 1 150px;
}
#div0 div:nth-child(2){
flex:0 1 250px;
}
用他的错误计算方法是
200-(150+250)=-200
-200/2=-100
div1:150-100=50
div2:250-100=150
而正确值是75和125
2021-06-23
10:45秒计算 flex-shrink 的方法是错误的。
错误的方法却造成了正确的结果是由于两个元素的flex-basis一样。
正确的算法应该是:
1:计算差值 400-(300+300)=-200
2:计算权重 300*1+300*3=1200
3:计算被移除量:
div1:-200*1(flex-shrink)*300/1200=-50
div2:-200*3(flex-shrink)*300/1200=-150
实际宽度:
div1:300-50=250
div2:300-150=150
错误的方法却造成了正确的结果是由于两个元素的flex-basis一样。
正确的算法应该是:
1:计算差值 400-(300+300)=-200
2:计算权重 300*1+300*3=1200
3:计算被移除量:
div1:-200*1(flex-shrink)*300/1200=-50
div2:-200*3(flex-shrink)*300/1200=-150
实际宽度:
div1:300-50=250
div2:300-150=150
2021-06-23