从浏览器输入url直到页面渲染,需要经历的步骤
(个人理解,非正确答案)
一:通过域名获取对应ip地址(即DNS解析URL)
具体:①在浏览器缓存中查找(浏览器会根据访问频率缓存DNS),找不到进行②
②在操作系统中找,找不到进行③
③在路由器中找,找不到进行④
④ISP的DNS服务器找,(对isp不太懂),还是找不到,就去上级服务器找,找不到再上级
找到ip以后会进入浏览器和服务器交互的过程
二:tcp协议的三次握手、浏览器根据ip和端口号发起http的get请求→服务器返回页面→返回状态码200并开始进行渲染阶段
三:浏览器页面渲染
大致:1)根据html文件构建dom树和cssom树,遇到js文件阻塞
2)构建渲染树
3)根据js操作进行页面重绘或者重排
Dom树构建详细:1)读取html文档(读取到的是字节)
2)将字节转换为字符
3)根据字符确定标签
4)将标签转换为节点
5)用节点构成父子、兄弟关系的DOM树
CSSOM树同理
加载JS:在加载html或者css遇到js会阻塞,除非scrpt标签有defer或者async
渲染树:一边加载一边解析一边渲染

浙公网安备 33010602011771号