从URL输入到页面展现到底发生什么?
状态码规则如下:1xx:指示信息--表示请求已接收,继续处理。2xx:成功--表示请求已被成功接收、理解、接受。3xx:重定向--要完成请求必须进行更进一步的操作。4xx:客户端错误--请求有语法错误或请求无法实现。5xx:服务器端错误--服务器未能实现合法的请求。 (2) 响应头部包含响应报文的附加信息,由 名/值 对组成 (3) 响应主体包含回车符、换行符和响应返回数据,并不是所有响应报文都有响应数据 六、浏览器解析渲染页面 浏览器拿到响应文本 HTML 后,接下来介绍下浏览器渲染机制 浏览器解析渲染页面分为一下五个步骤: 根据 HTML 解析出 DOM 树 根据 CSS 解析生成 CSS 规则树 结合 DOM 树和 CSS 规则树,生成渲染树 根据渲染树计算每一个节点的信息 根据计算好的信息绘制页面 1.根据 HTML 解析 DOM 树 根据 HTML 的内容,将标签按照结构解析成为 DOM 树,DOM 树解析的过程是一个深度优先遍历。即先构建当前节点的所有子节点,再构建下一个兄弟节点。 在读取 HTML 文档,构建 DOM 树的过程中,若遇到 script 标签,则 DOM 树的构建会暂停,直至脚本执行完毕。 2.根据 CSS 解析生成 CSS 规则树 解析 CSS 规则树时 js 执行将暂停,直至 CSS 规则树就绪。 浏览器在 CSS 规则树生成之前不会进行渲染。 3.结合 DOM 树和 CSS 规则树,生成渲染树 DOM 树和 CSS 规则树全部准备好了以后,浏览器才会开始构建渲染树。 精简 CSS 并可以加快 CSS 规则树的构建,从而加快页面相应速度。 4.根据渲染树计算每一个节点的信息(布局) 布局:通过渲染树中渲染对象的信息,计算出每一个渲染对象的位置和尺寸 回流:在布局完成后,发现了某个部分发生了变化影响了布局,那就需要倒回去重新渲染。 5.根据计算好的信息绘制页面 绘制阶段,系统会遍历呈现树,并调用呈现器的“paint”方法,将呈现器的内容显示在屏幕上。 重绘:某个元素的背景颜色,文字颜色等,不影响元素周围或内部布局的属性,将只会引起浏览器的重绘。 回流:某个元素的尺寸发生了变化,则需重新计算渲染树,重新渲染。 七、断开连接 当数据传送完毕,需要断开 tcp 连接,此时发起 tcp 四次挥手。 (编辑:西安站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |