腾讯linux内核面试,【腾讯谷歌Linux面试题】面试问题:浏览器内核差异… - 看准网...

浏览器内核的差异

2017年04月19日 23:47:28

阅读数:185

浏览器内核:

浏览器最重要最核心的部分是“render engine”,即解释引擎,专门负责对html,css,js等进行解释并最终渲染到窗口中,但是不同的浏览器对脚本,文件等的解释不是完全一样的,这就导致开发中所要面对的兼容性问题;

1

2

trident:

ie浏览器内核,市场占有率最大的浏览器内核,ie9之前存在很多兼容问题,但之后的版本改善了很多,不过仍旧存在js,css的兼容问题,但是其提供了大量的接口,功能;

基于trident的浏览器:

ie6,ie7,ie8(trident4.0),ie9(trident 5.0),ie10(trident6.0);

世界之窗,360安全浏览器,遨游2.0(3.0以上版本开始采用webkit内核),搜狗浏览器,腾讯TT;

其中部分版本的浏览器是双核浏览器,甚至是多核,

1

2

3

4

5

6

gecko:

netscape6开始使用的内核,后来firefox继续沿用发展,背后是强大的mozilla基金会,现在大多称为firefox内核,特点是跨平台,可以在linux,mac,window上进行使用,兼容性优,对w3c标准的支持好;

基于gecko的浏览器:

firefox等;

1

2

3

4

presto:

opera采用的浏览器内核,特点是渲染速度极快,处理js的速度优于gecko和trident,但是兼容性差;

基于opera浏览器:

opera等;

1

2

3

4

webkit:

苹果率先开源的,谷歌浏览器上也使用的内核,由khtml发展而来,渲染速度快,性能好,对w3c标准的支持也很好;

基于webkit浏览器:

chrome、safari等、塞班手机浏览器、Android手机默认的浏览器浏览器;

1

2

3

4

khtml(Linux):

KDE开发的内核,速度快捷,容错率低;

常见的khtml内核的浏览器有:konqueror

1

2

3

浏览器渲染的原理:

1.当用户在地址栏里面输入网址并敲下回车的时候,浏览器开始向服务器发出请求;

2.当浏览器拿到html页面的时候,开始从上而下进行解释;

3.当遇到link标签的时候,浏览器会再次向页面进行请求,并根据请求得到的css来重绘页面;

4.当遇到script标签的时候,浏览器再次请求服务器,并执行得到的js对页面进行重绘;

5.当遇到图片等其他文件的时候,浏览器也会再次发起请求并根据拿到的文件来对页面进行重绘;

6.当进行上面这些步骤时,浏览器的重绘回流等是无法避免的,即需要进一步的优化,比如制作雪碧图,避免反复请求,给图片固定宽高等等;

上面的内容也可以解释为:

浏览器拿到html、css、js,开始构建一个dom树,页面要显示的各元素都会创建到这个dom树当中,每当一个新元素加入到这个dom树当中,浏览器便会通过css引擎查询css样式表,找到符合该元素的样式规则应用到这个元素上,每一次应用新规则都可能引起重绘回流;

查阅网上知识有感,请大家多多指正;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值