目录
1. 本节代码
2.布局
2.1 根据浏览器属性进行排版
简易浏览器只实现 flex 布局
2.2 收集元素进行(row)
- 判断布局元素是否设置了主轴尺寸
mainSize
,未设置mainSize
则计算该值,并将该布局元素标记为自动大小isAutoMainSize
- 遍历布局元素的非文本结点子元素,将元素装入对应的行
flexLine
2.3 主轴方向的计算
主轴方向的计算,找出行中所有设置了
flex
样式属性的元素,将主轴剩余空间按比例均分给这些元素,若剩余空间为负,所有flex元素主轴方向尺寸为0,等比压缩其它剩余元素
2.4 交叉轴方向的计算
交叉轴方向的计算,根据每一行中最大元素交叉轴尺寸
crossSize
获取到行高,然后根据行高、flex-align
和item-align
,确定元