1、什么是浏览器内核

浏览器内核又可以分成两部分:渲染引擎(layout engineer或者Rendering Engine)和JS引擎。它负责取得网页的内容(HTML、XML、图像等等)、整理讯息(例如加入CSS等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器的内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核。(参见维基百科)JS引擎则是解析JavaScript语言,执行javascript语言来实现网页的动态效果。最开始渲染引擎和JS引擎并没有区分的很明确,后来JS引擎越来越独立,内核就倾向于只指渲染引擎。有一个网页标准计划小组制作了一个ACID来测试引擎的兼容性和性能。内核的种类很多,如加上没什么人使用的非商业的免费内核,可能会有10多种,但是常见的浏览器内核可以分这四种:Trident、Gecko、Presto、Webkit。

2、主流浏览器所使用的内核分类

Trident内核:IE,MaxThon,TT,The World,360,搜狗浏览器等
Gecko内核:Netscape6及以上版本,FF,MozillaSuite/SeaMonkey等
Presto内核:Opera7及以上

Webkit内核:Safari,Chrome等

3、主流浏览器内核解释

(1)WEBKIT内核

Webkit:是苹果公司自主研发的内核,也是Safari浏览器使用的内核。 Webkit引擎包含渲染引擎WebCore和javascript引擎JSCore,均是从KDE的KHTML及KJS引擎衍生而来,它们都是自由软件,在GPL条约下授权,同时支持BSD系统的开发。所以Webkit也是自由软件,同时开放源代码。Google Chrome、360极速浏览器以及搜狗高速浏览器高速模式也使用Webkit作为内核。

(2)GECKO内核

Netscape6开始采用的内核,后来的Mozilla FireFox(火狐浏览器) 也采用了该内核,Gecko的特点是代码完全公开,因此,其可开发程度很高,全世界的程序员都可以为其编写代码,增加功能。因为这是个开源内核,因此受到许多人的青睐,Gecko内核的浏览器也很多,这也是Gecko内核虽然年轻但市场占有率能够迅速提高的重要原因。Gecko 内核的浏览器仍然还是Firefox (火狐) 用户最多,所以有时也会被称为Firefox内核。Gecko核心设计的相对成熟,在无法获取源码的情况下,开放程度仅次于IE。

(3)TRIDENT内核

该内核程序在1997年的IE4中首次被采用,是微软在Mosaic代码的基础之上修改而来的,并沿用到IE11,也被普遍称作”IE内核”。Trident实际上是一款开放的内核,其接口内核设计的相当成熟,因此才有许多采用IE内核而非IE的浏览器(壳浏览器)涌现。由于IE本身的“垄断性”(虽然名义上IE并非垄断,但实际上,特别是从Windows 95年代一直到XP初期,就市场占有率来说IE的确借助Windows的东风处于“垄断”的地位)而使得Trident内核的长期一家独大。

微软很长时间都并没有更新Trident内核,这也导致了后面的两个后果: 一是Trident内核曾经几乎与W3C标准脱节(2005年) 二是Trident内核的大量 Bug等安全性问题没有得到及时解决,然后加上一些致力于开源的开发者和一些学者们公开自己认为IE浏览器不安全的观点,也有很多用户转向了其他浏览 器,Firefox和Opera就是这个时候兴起的。Trident内核的常见浏览器有:IE6、IE7、IE8(Trident 4.0)、IE9(Trident 5.0)、IE10(Trident 6.0)、2345浏览器等等

(4)PRESTO内核

Presto是一个由Opera Software开发的浏览器排版引擎,供Opera 7.0及以上使用。该款引擎的特点就是渲染速度的优化达到了极致,也是目前公认网页浏览速度最快的浏览器内核,然而代价是牺牲了网页的兼容性。实际上它是一个动态内核,与其它几个内核的最大的区别就在脚本处理上,Presto有着天生的 优势,页面的全部或者部分都能够在回应脚本事件时等情况下被重新解析。此外该内核在执行Javascrīpt的时候有着最快的速度,根据在同等条件下的测 试,Presto内核执行同等Javascrīpt所需的时间仅有Trident和Gecko内核的约1/3(Trident内核最慢,不过两者相差没有多大)

4.CSS3中-MS-,-MOZ-,-WEBKIT-,-O-浏览器私有前缀详解

(1)-moz-:代表FireFox浏览器私有属性

(2)-ms-:代表IE浏览器私有属性

(3)-webkit-:代表safari、chrome浏览器私有属性

(4)-o-:代表opera浏览器私有属性

浏览器内核(引擎)及css前缀相关推荐

  1. 浏览器内核引擎分类归纳

    前端小知识--浏览器的内核引擎,四分天下: 1)Trident: IE 以Trident 作为内核引擎: 2)Gecko: Firefox 是基于 Gecko开发: 3)WebKit: Safari, ...

  2. 浏览器内核Trident/Gecko/WebKit/Presto

    "浏览器内核"主要指渲染引擎(Rendering Engine),负责解析网页语法(如HTML.JavaScript)并渲染.展示网页.因此,所谓的浏览器内核通常也就是指浏览器所采 ...

  3. 常见的主流浏览器内核

    "浏览器内核"主要指渲染引擎(Rendering Engine),负责解析网页语法(如HTML.JavaScript)并渲染.展示网页.因此,所谓的浏览器内核通常也就是指浏览器所采 ...

  4. [css] 写出主流浏览器内核私有属性的css前缀

    [css] 写出主流浏览器内核私有属性的css前缀 完善一下: Chrome:Blink内核 -webkit-Safari:WebKit内核 -webkit-Firefox :Gecko内核 -moz ...

  5. 主流浏览器js 引擎内核市场份额attialx总结vOa9

    原文: http://blog.csdn.net/attilax/article/details/40016... 时间: 2014-10-12 atitit.. 主流浏览器 js 引擎 内核 市场份 ...

  6. Rendering Engine 主流的浏览器内核(排版引擎、渲染引擎、解释引擎)有哪几种,分别的特点...

    一.A web browser engine A rendering engine is software that draws text and images on the screen. The ...

  7. 【前端】浏览器内核(渲染引擎)有哪些?

    一.浏览器的结构: ① 用户界面(UI):包括菜单栏.工具栏.地址栏.后退/前进按钮.书签目录等,也就是能看到的除了显示页面的主窗口之外的部分: ② 浏览器引擎(Rendering engine):也 ...

  8. H5 CSS hack 和浏览器内核

    CSS hack的目的就是使你的CSS代码兼容不同的浏览器.当然,我们也可以反过来利用CSS hack为不同版本的浏览器定制编写不同的CSS效果.如下是例子: <!DOCTYPE html PU ...

  9. 浏览器内核及js引擎

    找到一篇好文,mark一下: http://www.cnblogs.com/xiyangbaixue/archive/2014/10/22/4042548.html 摘要: 面试一个大公司的时候问到了 ...

  10. 浏览器内核与js引擎

    浏览器内核与js渲染引擎: 简介: 在维基百科上是这样介绍浏览器内核的,网页浏览器的排版引擎(Layout Engine或Rendering Engine)也被称为浏览器内核.页面渲染引擎或模板引擎, ...

最新文章

  1. Oracle 11.2.0.1 升级到 11.2.0.3 示例
  2. axure中怎么把图片变圆_orcad中怎么创建带图片的Title Block?
  3. 笔记-信息系统开发基础-面向对象基本概念-对象和类
  4. 微软官网html官方文档,微软官方的.net系列文档
  5. Windows-Server下加强系统安全性系列之方案【八】
  6. Java学习笔记3——集合框架
  7. Qt文档阅读笔记-C++与QML混合编程(QML画饼状图)【通过信号与槽交互】
  8. windows 安装mongodb
  9. JavaScript 游戏开发包-收集
  10. 花椒前端基于WebAssembly 的H.265播放器研发
  11. “网红”Cat-1模组
  12. 青岛理工大学QUT期末考试《电子商务概论》思维导图
  13. UE4 引擎 package 可执行文件过程中碰到fatal error的常见解决方法
  14. 关于RabbitMQ启动慢问题的解决方法
  15. 微信小程序音乐播放器系统app毕业设计
  16. 在Amazon SageMaker上快速、灵活构建Amazon TensorFlow模型的在线推理服务
  17. Arduino uno esp01s 硬串口通信
  18. C++实现双人中国象棋(一)——算法篇(附完整代码)
  19. 2002年世界杯中国队男足的3场比赛(中国vs哥斯达黎加、巴西和土耳其)比分
  20. leetcode 剑指 Offer 46. 把数字翻译成字符串

热门文章

  1. html 菜单栏横向排列,响应式可弹出横向导航栏
  2. Android 视频直播的流程总览
  3. NVIDIA GeForce Experience报错:“验证程序加载失败,请检查您的浏览器设置,例如广告拦截程序”的解决方法
  4. 硬盘损坏,怪我咯?3分钟拯救硬盘里的小姐姐!
  5. 物理Standby数据库的文件路径转换(1)
  6. mysql查询姓名第二个字_第二篇:MySQL中SELECT查询语句总结
  7. WEB前端开发实践 仿Apple官网首页 HTML+CSS+JS
  8. SpringBoot+tomcat发布之war包发布
  9. 影响英语单词拼写的6大因素
  10. 解读Tilera怪兽级64核处理器(转)