打印本文 打印本文  关闭窗口 关闭窗口  
浏览器引擎Webkit简介
时间:2013/2/15 0:15:37

WebKit 是一个开源的浏览器引擎,与之相对应的引擎有Gecko(Mozilla Firefox 等使用)和Trident(也称MSHTML,IE 使用)。同时WebKit 也是苹果Mac OS X 系统引擎框架版本的名称,主要用于Safari,Dashboard,Mail 和其他一些Mac OS X 程序。WebKit 前身是 KDE 小组的 KHTML,WebKit 所包含的 WebCore 排版引擎和 JSCore 引擎来自于 KDE 的 KHTML 和 KJS,当年苹果比较了 Gecko 和 KHTML 后,仍然选择了后者,就因为它拥有清晰的源码结构、极快的渲染速度。Apple将 KHTML 发扬光大,推出了装备 KHTML 改进型 WebKit 引擎的浏览器 Safari。

简介

WebKit 所包含的 WebCore 排版引擎和 JSCore 引擎,均是从KDE的KHTML及KJS引擎衍生而来,它们都是自由软件,在GPL条约下授权,同时支持BSD系统的开发。所以Webkit也是自由软件,同时开放源代码。

WebKit的优势在于高效稳定,兼容性好,且源码结构清晰,易于维护。

尽管Webkit内核是个非常好的网页解析机制,但是由于以往微软把IE捆绑在Windows里(同样的Webkit内核的Safari捆绑在Apple产品里,Google Chrome捆绑在Google产品里),导致许多网站都是按照IE来架设的,很多网站不兼容Webkit内核,比如登录界面、网银等网页均不可使用Webkit内核。目前几乎所有网站和网银已经逐渐支持WebKit,未来可能将取代IE内核的浏览器。

WebKit 内核在手机上的应用也十分广泛,例如 Google 的手机 Android、 Apple 的 iPhone, Nokia’s Series 60 browser 等所使用的 Browser 内核引擎,都是基于 WebKit。

WebKit是开源的Web浏览器引擎,苹果的Safari、谷歌的Chrome浏览器都是基于这个框架来开发的。WebKit 还支持移动设备和手机,包括iPhone和Android手机都是使用WebKit做为浏览器的核心。

WebKit 是一个开源项目,其起源可追溯到 K Desktop Environment (KDE)。WebKit 项目催生了面向移动设备的现代 Web 应用程序。虽然设备本身的能力和形态因素都相当重要,但移动用户最热衷的仍然是内容。如果移动用户可用的内容只是 Internet 用户可用内容的一个很小的子集,那么用户体验充其量也只能划分为二等。

WebKit 还应用在了桌面的 Safari 浏览器内,该浏览器是 Mac OS X 平台默认的浏览器。不管我们讨论的是桌面版本还是 iPhone 或 Android 上的浏览器引擎,WebKit 均优先支持 HTML 和 CSS 特性。实际上,WebKit 还支持尚未被其他浏览器采纳的一些 CSS 样式 — 这些特性正在得到 HTML5 规范的考虑。

HTML5 规范是一个技术草案集,涵盖了各种基于浏览器的技术,包括客户端 SQL 存储、转变、转型、转换等。HTML5 的出现已经有些时间了,虽然尚未完成,但是一旦其特性集因主要浏览器平台支持的加入而逐渐稳定后,Web 应用程序的简陋开端将成为永久的记忆。Web 应用程序开发将成为主导 — 并且不只是在传统的桌面浏览器空间,还将在移动领域。移动将一跃成为首要考虑,而不再是后备之选。

应用平台

在应用于Mac Os上的Safari之后,Webkit很快被广泛地移植到其他系统平台:

iOS:

2007年6月29日,iPhone上市,WebKit进入iPhone OS平台,而且立即成为iPhone OS平台独一无二的排版引擎。

Android:

Google 开发的手机操作系统Android中内置的浏览器也是采用的WebKit引擎。

Nokia S60:

诺基亚公司将WebKit移植到Symbian S60操作系统中,并开发了基于Webkit的手机浏览器“Web browser for S60”,广泛用于诺基亚、三星、LG等基于Symbian S60操作系统的手机中。

Web OS:

Palm 推出第一款基于WebKit的操作系统,Palm Pre是第一款基于该系统的手机产品。

Linux:

尽管WebKit的原型K内核是由Qt写成,但Linux下目前最受瞩目的WebKit项目却是Gnome领导的WebKit/Gtk+。随着奇趣科技于2008年6月被Nokia收购,Qt方面也加快了WebKit的“回归”进程。

Midori,Google Chrome,GNOME的Epiphany、KDE的Konqueror,Arora是现在Linux系统下主要的Webkit内核浏览器。

Windows:

Webkit内核在Windows上发展最晚,Safari(for Windows),Midori,Google chrome,具有双核模式的傲游3和搜狗浏览器2(高速模式下使用Webkit核心)是最为常见的Webkit浏览器。2009年推出的safari和Chrome以及2010年推出的搜狗浏览器V2.0Beta和傲游3.0beta都使用的webkit引擎完全通过了acid3测试满分!

引擎分类

现在浏览器的内核引擎,基本上是四分天下:

Trident: IE 以Trident 作为内核引擎;

Gecko: Firefox 是基于Gecko 开发;

WebKit: Safari, Google Chrome,傲游3 基于 Webkit 开发。  

Presto: Opera的内核,但由于市场选择问题,主要应用在手机平台--Opera mini。

注:2013年2月Opera宣布转向WebKit引擎。

webkit内核的浏览器

2008年9月2日,谷歌公司发布的第一个版本Google Chrome(中文名为谷歌浏览器)就采用了Webkit引擎。

2009年,广受关注的Android的自带的浏览器也是Webkit内核,加载网页速度比IE手机浏览器快了近一倍。

2010年1月24日,搜狗公司发布搜狗浏览器V2.0Beta,采用Chromium引擎,并支持与IE引擎互相切换。

2010年1月24日,傲游浏览器3.0beta发布。2012年5月31日已发布3.3.9.1000。傲游3修正了众多假死问题。拥有双引擎切换功能。

2010年6月11日 阿里云浏览器内测第一版(0.1.9.0)发布,这是一款集成Chromium内核、IE内核的浏览器。

2010年5月25日,腾讯推出的[3]QQ浏览器采用webkit内核以及IE内核。

2011年7月18日,百度推出的百度PC浏览器支持IE和Webkit双内核智能切换。

2013年2月,Opera宣布将用WebKit替代当前的核心浏览器引擎。