webkit(浏览器引擎)

2023-02-23 57阅读

温馨提示:这篇文章已超过443天没有更新,请注意相关的内容是否还可用!

webkit

浏览器引擎

WebKit 是一个开源的浏览器引擎,与之相对应的引擎有Gecko(Mozilla Firefox 等使用),Trident(也称MSHTML,IE 使用)和EdgeHTML(也称Chakra,Edge和其他UWP浏览器使用)。

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

软件授权免费
外文名webkit
特点高效稳定,兼容性好
代表浏览器Safari、Dashboard、Mail
引擎类型开源浏览器引擎
软件前身KHTML

背景

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

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

尽管Webkit内核是个非常好的网页解析机制,但是由于以往微软把IE捆绑在Windows里(同样的Webkit内核的Safari捆绑在Apple产品里,Chrome捆绑在Google产品里),导致许多网站都是按照IE来架设的,很多网站不兼容Webkit内核,比如登录界面、网银等网页均不可使用Webkit内核的浏览器。

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

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

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

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

应用平台

iOS:

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

Android:

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

NokiaS60:

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

WebOS:

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

Linux:

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

Midori,GoogleChrome,GNOME的Epiphany、KDE的Konqueror,浏览器。

Windows:

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

引擎分类

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

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

Gecko:Firefox是基于Gecko开发;

WebKit:Safari,GoogleChrome,傲游3,猎豹浏览器,百度浏览器opera浏览器基于Webkit开发。

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

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

注:2013年4月Opera宣布放弃WEBKIT,跟随GOOGLE的新开发的blink引擎

内核介绍

webkit内核的浏览器

2008年9月2日,谷歌公司发布的第一个版本GoogleChrome(中文名为谷歌浏览器)就采用了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年9月16日360极速浏览器发布,这是一款使用Chromium开源代码(基于webkit内核)的浏览器,网页浏览比ie快一倍。

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

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

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

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

2013年4月4日谷歌星期三(4月3日)宣布,他们将利用WebKit渲染引擎开发自主的网页渲染引擎“Blink”。

WebKit2

WebKit2发布于2010年4月8日,Webkit2的目标是将元件抽象化,并提供更干净的网页渲染,它会利用从周围的界面或是应用程式的壳,建立一个环境使网页的内容(JavaScript、HTML、排版等等)将会在另外一个程序(Process)运行,比起WebKit,这个抽象化的做法打算令WebKit2可重复使用一个更简单的程序。因为WebKit2对比起WebKit有一个不相容的API,所以导致他的名字被改变为WebKit2。

WebKit2仅开放于Mac、Windows及MeeGo-Harmattan.

参考资料

1.WebKit.Net使用·博客园

目录[+]