浏览器的那些事儿-浅析浏览器的渲染原理

  1990年至今,大家熟悉的浏览器已有25年历史,第一个网页浏览器WorldWideWeb(后更名叫Nexus)为互联网时代打开了门。

        众所周知,目前主流的浏览器有:IEChromeSafariFirefox,国内还有各种套壳的如Sogou360、猎豹等多到几十个浏览器,种类虽多但浏览器的结构和工作原理大同小异,负责页面的渲染引擎在很长一段时间内也只有tridentgeckowebkit等数种,本文旨在讲述浏览器渲染引擎是怎样工作的,其主要结构以及常见的与渲染相关的问题,深入了解这些知识对从事WEB工作有很大的帮助。

     1. 从地址栏输入URL,浏览器是怎样工作的

        简单的讲,在地址栏输入 https://www.xxx.com 并回车会发生以下事情:

          •  浏览器引擎解析urlserver发起网络请求;

          •  接收到server返回的数据包(超文本),交由渲染引擎解析并开始渲染;

          •  渲染的过程是按照标签(DOM树)的顺序进行的,遇到静态资源外链(如cssjs、图片等),控制网络组件发起对这些资源的请求,注意这个过程浏览器是边渲染边请求/接收数据的。css、图片会立即被渲染引擎解析渲染(不会阻塞渲染),js会立即被JS引擎解析执行(会阻塞渲染,只有js执行完毕后才会继续渲染 );

          •  所有的外链资源请求完毕,页面渲染完毕/js执行完毕,一次完整的页面请求就完成了。

        看过上面的过程会发现浏览器是由分工明确的组件构成的,主要包括用户界面、浏览器引擎、渲染引擎、网络、用户界面后端、js引擎和数据存储等组件,从打开浏览器输入url到最终的页面出现,用户最关心的就是页面的载入速度和显示方式了,这与渲染引擎的工作方式息息相关,话不多说我们来看看何为渲染引擎,它是怎样渲染页面的,它为什么会直接影响页面的载入速度和显示方式。

      2. 渲染引擎 (rendering engine)

        渲染引擎的职责就是渲染,即在浏览器窗口中显示所请求的内容。默认情况下,渲染引擎可以显示htmlxml文档及图片,它也可以借助插件(一种浏览器扩展)显示其他类型数据,例如使用PDF阅读器插件,可以显示

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值