今天面试被问到了测试兼容性的时候我们是怎么选取浏览器的,绝大部分面试者会说我们选取哪些哪些浏览器,但是很少有人关注为什么选取这些浏览器,那么这里就来解决这个问题,为什么选取这些浏览器,因为每个浏览器除了页面布局其他部分都是差不多的,其中浏览器最本质的区别就是有些浏览器的内核是不一样的。
首先我们来看一下百度百科给出的浏览器内核的定义:浏览器最重要或者说核心的部分是"Rendering Engine",可大概译为"渲染引擎",不过我们一般习惯将之称为"浏览器内核"。负责对网页语法的解释(如标准通用标记语言下的一个应用HTML、JavaScript)并渲染(显示)网页。 所以,通常所谓的浏览器内核也就是浏览器所采用的渲染引擎,渲染引擎决定了浏览器如何显示网页的内容以及页面的格式信息。不同的浏览器内核对网页编写语法的解释也有不同,因此同一网页在不同的内核的浏览器里的渲染(显示)效果也可能不同,这也是网页编写者需要在不同内核的浏览器中测试网页显示效果的原因。
在来看下现在主要的内核有哪些,哪些浏览器都是哪些内核
Trident[ˈtraɪdnt]内核:IE最先开发或使用的,也称IE内核,360浏览器使用的也是IE内核;
Webkit内核:谷歌chrome浏览器最先开发或使用,也叫谷歌内核,枫树浏览器、太阳花使用的也是谷歌内核;
Gecko [ˈgekəʊ] 内核: Netscape6开始采用的内核,后来的Mozilla FireFox (火狐浏览器) 也采用了该内核,K-Meleon浏览器也是使用这种内核;
Presto[ˈprestəʊ] 内核:目前只有Opera[ˈɒprə] 浏览器采用该内核
此外,由于IE浏览器在国内的普及率非常高,所以造成了很多网上银行和支付系统只支持IE的Trident内核,其他浏览器访问根本无法进行正常支付和转账等业务。这就造成了经常在网上购物的人离不开Trident内核的IE浏览器。但是Trident内核的速度和兼容性上又是在比不上Chrome[krəʊm] 浏览器的WebKit内核和Firefox[faifɔ:ks]浏览器的Gecko[ˈgekəʊ] 内核。于是双核浏览器应运而生,比如傲游、枫树浏览器(ChromePlus)、搜狗高速浏览器。