主流的浏览器内核种类?, 对前端的影响?

什么是浏览器内核?

  • 1 浏览器讷河可以理解为排版引擎, 主要由渲染引擎和JS引擎.
  • 2.排版引擎主要是负责获取网页内容(HTML,XML, CSS, JS, 图像)等信息进行解析, 渲染网页, 将网页的代码转换为看得见的页面
  • 2 浏览器的内核的不同,对于网页的语法解释会有不同, 所以渲染的效果也不相同, 常见的内核有Trident,Gecko., Webkit, Presto,'Blink

Trident内核: IE浏览器以Trident作为内核引擎. Trident内核很慢
Gecko: FireFox是基于Gecko开发的
webkit: Safari内核, 旧版的Chrome, 它是苹果公司自己的内核.
Presto: Opera,Presto是由Opera Software开发的浏览器排版引擎,它是世界公认最快的渲染速度的引擎。在13年之后,Opera宣布加入谷歌阵营,弃用了 Presto
Blink: 代表作品是Chrome、Opera;由Google和Opera Software开发的浏览器排版引擎
Chromium 开源内核,chromium fork自webkit,代码可读性和编译速度得到提升。值得一提是谷歌专门研发了自己的JS引擎——V8,极大地提高了JS的运算速度。

分别对HTML,CSS,JS的兼容问题

1.html兼容性

1、img的alt属性,在图片不存在的情况下,各浏览器的解析不一致
在webkit(谷歌苹果)内核下显示的是一张破损的图片
在Gecko(火狐)内核下显示的是alt的文字
而在Trident(IE)中显示的是破损的图片加文字

2、ul标签内外边距问题
ul标签在IE6IE7中,有个默认的外边距,但是在IE8以上及其他浏览器中有个默认的内边距

2.CSS兼容

1、reset.css的诞生
2、css兼容前缀、条件注释、CSS Hack、js 能力检测做一些修补

3.js兼容问题

0、`jquery的诞生`

//事件
1、事件绑定:标注方法addEventListener,但IE下是attachEvent
2、事件捕获:标准是由捕获,而IE是冒泡,但是最后的结果是将IE的标准定为标准
3、获取event方式:准浏览器其是传参传入的,IE下由window.event获取的
4、获取目标元素方式:标准浏览器是event.target,而IE下是event.srcElement
。。。

4、ajax的实现方式不同,这个我所理解的是获取XMLHttpRequest的不同,IE下是activeXObject
5、获得DOM节点的父节点、子节点的方式不同
6、在IE、FireFox、Netscape等不同的浏览器里,对于document.body的clientHeight、offsetHeight 和 scrollHeight 有着不同的含义

参考文章: 浏览器内核发展史总结及前端开发的影响

你可能感兴趣的:(面试,面试,浏览器内核,兼容性)