Wednesday, November 16, 2011
网页浏览器史
蒂姆·伯纳斯-李(Tim Berners-Lee)是第一个使用超文本来分享资讯的人。他于1990年发明了第一个网页浏览器WorldWideWeb。在1991年3月,他把这个发明介绍给了他在CERN工作的朋友。从那时起,浏览器的发展就和网络的发展联系在了一起。
当时,网页浏览器被视为能够处理CERN庞大电话簿的实用工具。在与用户交互的前提下,网页浏览器根据gopher和telnet协议,允许所有用户能轻易地浏览别人所编写的网站。可是,其后插入图片到浏览器的举动,使之成为了互联网的“杀手级应用”。
NCSA Mosaic使互联网得以迅速发展。它最初是一个只在Unix运行的图像浏览器;很快便发展到在Apple Macintosh和Microsoft Windows亦能运行。1993年9月发表了1.0版本。NCSA中Mosaic项目的负责人马克·安德生辞职并创建了网景通信公司。
网景公司在1994年10月发布了他们的旗舰产品网景导航者。但第二年Netscape的优势就被削弱。错失了互联网浪潮的微软在这个时候匆促的购入了Spyglass公司的技术,改成Internet Explorer,掀起了软件业巨头微软和网景之间的浏览器大战。这同时加快了万维网发展。
这场战争把网络带到了千百万一般电脑用户面前,但同时显露了互联网商业化如何妨碍统一标准的制定。微软和网景都在他们的产品中加入了许多互不兼容的HTML扩展代码,试图以这些特点来取胜。1998年,网景公司承认其市场占有率已经无法挽回,这场战争便随之而退出。微软能取胜的其中一个因素是它把浏览器与其操作系统一并出售(OEM,原始设备制造);这亦使它面对反垄断诉讼。
网景公司以开放源代码迎战,创造了Mozilla,但此举未能挽回Netscape的市场占有率。1998年底美国在线收购了网景公司。发展初期,Mozilla计划为了吸引开发者而挣扎;但至2002年,它已经发展成一个稳定而强大的互联网包。Mozilla 1.0的出现被视为其里程碑。同年,派生出Phoenix(后改名Firebird,最后又改为Firefox)。Firefox 1.0于2004年发表。及至2008年,Mozilla及其派生产品约占20%网络流量。
Opera是一个灵巧的浏览器。它发布于1996年。目前它在手持电脑上十分流行,在个人电脑网络浏览器市场上的占有率则稍低。
Konqueror是一个由KDE开发的浏览器,KDE开发人员在开发KDE2时意识到一个良好的桌面环境必须搭配一个良好的网络浏览器及文件管理员,便投入不少力量开发了Konqueror,这个浏览器使用了自家开发的排版引擎KHTML,由于Konqueror是属于KDE的一员,并只常见于Unix-like下的KDE桌面环境,所以Konqueror并未普及。
纵然Macintosh的浏览器市场现在亦同样被Internet Explorer和Firefox占据,但苹果电脑自行推出的Safari也不容小觑。Safari是基于Konqueror这个开放源代码浏览器的KHTML排版引擎而制成的。Safari是Mac OS X的默认浏览器。
source:http://zh.wikipedia.org/zh-cn/Web%E6%B5%8F%E8%A7%88%E5%99%A8 ; http://upload.wikimedia.org/wikipedia/commons/7/74/Timeline_of_web_browsers.svg
网页浏览器 Web Browsers
网页浏览器是个显示网站服务器或文件系统内的文件,并让用户与此些文件交互的一种应用软件。它用来显示在万维网或局域网等内的文字、图像及其他信息。这些文字或图像,可以是连接其他网址的超连结,用户可迅速及轻易地浏览各种信息。大部分网页为HTML格式,有些网页需特定浏览器才能正确显示。
个人电脑上常见的网页浏览器按照2010年1月的市场占有率[1]依次是微软的Internet Explorer、Mozilla的Firefox、Google的Chrome、苹果公司的Safari和Opera软件公司的Opera。浏览器是最常用的客户端程序。万维网是全球最大的连结文件网络文库。
source: http://zh.wikipedia.org/zh-cn/Web%E6%B5%8F%E8%A7%88%E5%99%A8Based on Trident layout engine
Avant Browser
Internet Explorer Mobile
Internet Explorer
Greenbrowser
Maxthon
Slimbrowser
Based on Gecko layout engine
Classila
Camino
SeaMonkey
Firefox
Based on KHTML/WebKit layout engine
RockMelt
Epiphany
Chrome
Konqueror
Shiira
Safari
OmniWeb
iCab Mobile
rekonq
Based on Presto layout engine
Opera
Opera Mini
Opera Mobile
Others
Lynx
w3m
Links
Dillo
Netsurf
Contiki
source: http://upload.wikimedia.org/wikipedia/commons/7/74/Timeline_of_web_browsers.svg
Tuesday, November 15, 2011
网页浏览器的排版引擎 Web browser engine
A web browser engine, (sometimes called layout engine or rendering engine), is a software component that takes marked up content (such as HTML, XML, image files, etc.) and formatting information (such as CSS, XSL, etc.) and displays the formatted content on the screen. It "paints" on the content area of a window, which is displayed on a monitor or a printer.
A web browser engine is typically embedded in web browsers, e-mail clients, on-line help systems or other applications that require the displaying (and editing) of web content.
The user interface provides the menu bar, address bar, status bar, bookmark manager, history and preferences window among other things. It embeds the engine and serves as an interface between the user and the engine.
The engine does most of the work. It essentially takes a URL and a screen rectangle as arguments. It then retrieves the document corresponding to the URL and paints a graphical representation of it on the given rectangle. It handles links, cookies, scripting, plug-ins loading and other matters.
source: http://en.wikipedia.org/wiki/Web_browser_engine
Gecko, the Mozilla project's open-source web browser engine, is used by a variety of products derived from the Mozilla code base, including the Firefox web browser, the Thunderbird e-mail client, and SeaMonkey internet suite.
Trident, the web browser engine from Internet Explorer, is used by many applications on the Microsoft Windows platform, such as netSmart, Outlook Express, some versions of Microsoft Outlook, and the mini-browsers in Winamp and RealPlayer.
Opera Software's proprietary Presto engine is licensed to a number of other software vendors, and is used in Opera's own web browser.
KDE's open-source KHTML engine is used in KDE's Konqueror web browser and was the basis for WebKit, the rendering engine in Apple's Safari and Google's Chrome web browsers.
source: http://en.wikipedia.org/wiki/Comparison_of_web_browser_engines
source: http://en.wikipedia.org/wiki/Trident_(layout_engine)
Trident (also known as MSHTML) is the name of the layout engine for the Microsoft Windows version of Internet Explorer.
source: http://en.wikipedia.org/wiki/Gecko_(layout_engine)
A web browser engine is typically embedded in web browsers, e-mail clients, on-line help systems or other applications that require the displaying (and editing) of web content.
The user interface provides the menu bar, address bar, status bar, bookmark manager, history and preferences window among other things. It embeds the engine and serves as an interface between the user and the engine.
The engine does most of the work. It essentially takes a URL and a screen rectangle as arguments. It then retrieves the document corresponding to the URL and paints a graphical representation of it on the given rectangle. It handles links, cookies, scripting, plug-ins loading and other matters.
source: http://en.wikipedia.org/wiki/Web_browser_engine
Gecko, the Mozilla project's open-source web browser engine, is used by a variety of products derived from the Mozilla code base, including the Firefox web browser, the Thunderbird e-mail client, and SeaMonkey internet suite.
Trident, the web browser engine from Internet Explorer, is used by many applications on the Microsoft Windows platform, such as netSmart, Outlook Express, some versions of Microsoft Outlook, and the mini-browsers in Winamp and RealPlayer.
Opera Software's proprietary Presto engine is licensed to a number of other software vendors, and is used in Opera's own web browser.
KDE's open-source KHTML engine is used in KDE's Konqueror web browser and was the basis for WebKit, the rendering engine in Apple's Safari and Google's Chrome web browsers.
source: http://en.wikipedia.org/wiki/Comparison_of_web_browser_engines
The following tables compare general and technical information for a number of web browser engines. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up to date. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.
Basic general information about the engines.
A brief overview of the release history.
Engine | First public release | First stable release | Latest stable release | |||
---|---|---|---|---|---|---|
Date | Version | Date | Version | Date | Version | |
Gecko | 7 December 1998 | "Preview" | 19 March 1999 | M3 | 8 November 2011 | 8.0 |
GtkHTML | 2000 | ? | 2000 | ? | 14 December 2009 | 3.28.2 |
iCab | 1998 | ? | 1998 | ? | 1 January 2008 | 3.0.5[3] |
KHTML | October 2000 | ? | October 2000 | ? | 4 August 2009 | 4.3 |
NetFront | 1995 | ? | 1995 | ? | 13 January 2010 | 4.0 |
Presto | 13 November 2002 | 1.0 | 28 January 2003 | 1.0 | 12 April 2011 | 2.8.131 |
Prince XML | April 2003 | 1.0 | April 2003 | 1.0 | May 2010 | 7.1 |
XEP | 1999 | fo2pdf | ? | ? | March 2010 | 4.18 |
Robin | 27 April 2000 | 1.32 | 27 April 2000 | 1.32 | 24 August 2009 | 4.2.10 |
Tasman | 27 March 2000 | 0 | 27 March 2000 | 0 | 11 May 2004 | 1.0 |
Trident | April 1997 | No number | October 1997 | No number | 14 March 2011 | 5.0 |
WebKit | 7 January 2003 | 48 | 23 June 2003 | 85 | N/A | SVN version only |
Graphical
- Boxely - for AOL applications
- Gecko - for Camino, Firefox, K-Meleon, SeaMonkey, Netscape, and other Gecko-based browsers
- GtkHTML - for Novell Evolution and other GTK+ programs
- HTMLayout - embeddable HTML/CSS rendering engine - component for Windows and Windows Mobile operating systems
- KHTML - for Konqueror
- NetFront - for Access NetFront
- NetSurf - for NetSurf
- Presto - for Opera 7 and above, Macromedia Dreamweaver MX and MX 2004 (Mac), and Adobe Creative Suite 2
- Prince XML - for Prince XML
- Robin - for The Bat!
- Tasman - for Internet Explorer 5 for Mac, Microsoft Office 2004 for Mac, and Microsoft Office 2008 for Mac.
- Trident - for Internet Explorer since version 4.0 and embedded WebBrowser controls (such as Internet Explorer shells, Maxthon and some media players)
- Tkhtml - for hv3
- WebKit - for Safari, Arora, Midori, OmniWeb, Shiira, iCab since version 4, Epiphany, SRWare Iron, Google Chrome, Rekonq, IOS_(Apple) and in Maxthon 3.
[edit]Text-based
[edit]Historical
- Mariner - for Netscape Communicator 5
- iCab - for iCab 1-3
source: http://en.wikipedia.org/wiki/Trident_(layout_engine)
Trident (also known as MSHTML) is the name of the layout engine for the Microsoft Windows version of Internet Explorer.
All versions of Internet Explorer for Windows from 4.0 onwards use Trident, and it is also used by various other web browsers and software components (see Internet Explorer shells). InWindows 98, Windows Me, and Windows 2000, it is also used for the Windows file manager/shell, Windows Explorer.[citation needed] The Add/Remove Programs tool in Windows 2000 uses Trident to render the list of installed programs,[citation needed] and in Windows XP it is also used for the User Accounts Control Panel, which is an HTML Application.[citation needed] Trident however was not used by the Internet Explorer for Mac (which uses Tasman), nor by the early versions of Internet Explorer Mobile.
Some other Trident-based applications include:
- AOL Explorer, a web browser
- AOL Instant Messenger 6.x, which uses Trident to render conversation and profile windows, and advertisement panels
- Avant Browser
- Bento Browser (built into Winamp)
- EA Link, incompatible with Trident as of Internet Explorer 7 RC2
- Enigma, a web browser
- Google Talk, which uses Trident to render chat windows and profile cards
- GreenBrowser, which is also presented at the BrowserChoice.eu page
- IE Tab, a Firefox and Google Chrome add-on used to render pages with Trident within the Firefox user interface.
- Impulse (content delivery), uses Trident to render "Explore" page, as well as several of the "Community" pages
- iRider, a web browser
- LimeWire, which renders the page 'New@Lime'
- Lunascape, developed by Lunascape Corporation
- Maxthon, which uses the Trident engine while adding features not built into IE7
- MediaBrowser, customized browsers, especially for Nintendo
- MenuBox, a web browser
- Microsoft Compiled HTML Help
- Microsoft Encarta and related products
- Microsoft InfoPath
- Microsoft Outlook which uses Trident to render HTML Messages (prior to Outlook 2007) and the "Outlook Today" screen
- Microsoft Outlook Express, which uses Trident to render HTML Messages
- Microsoft Visual InterDev 6 uses Trident in editing mode as visual HTML designer
- Microsoft Visual Studio 2002-2005 use Trident in editing mode to provide visual ASP.NET/HTML designer
- MSN Messenger, which uses it to produce Flash-based "winks" and games, and for all advertisements shown in the advertisement banner
- NeoPlanet, a web browser
- NetCaptor, a web browser
- Netscape Browser (Netscape 8), which used Trident to render web pages in IE mode
- Pyjamas, a python Widget set Toolkit. Embedding IWebBrowser2 as an Active-X component and accessing the COM interface, Pyjamas uses Trident for the Desktop version, through the python win32 "comtypes" library.
- RealNetworks
- Sleipnir, a web browser
- SlimBrowser, a web browser
- Skype, a VoIP software renders HTML data with Trident.
- TheWorld Browser, a web browser
- TomeRaider, an ebook reader
- Tencent Traveler, a web browser
- ThreeTeeth Browser, a lightweight web browser.
- UltraBrowser, a web browser
- Valve's Steam client, previous versions of which used Trident to render the "Store", "Update News" and "Community" sections as well as the Steam in-game browser and MOTD screens in Valve games. The Steam client was recently updated to use WebKit instead of Trident for these features.
- WebbIE, a web browser
- Windows Live Writer, which uses Trident for its editor.
- Windows Media Player, which uses Trident to render the "Media Information" pages.
source: http://en.wikipedia.org/wiki/Gecko_(layout_engine)
Gecko is primarily used in web browsers, the earliest being Netscape 6 and Mozilla Application Suite (later renamed SeaMonkey). It is also used in other Mozilla web browser derivatives such as Firefox, Camino, Flock, K-Meleon and the implementation of Internet Explorer that is part of Wine.[9]
Other products not included in the table include Swiftfox, Portable Firefox, Fennec, Conkeror, Classilla, TenFourFox, HP Secure Web Browser, Oxygen, Minimo, My Internet Browser, Sylera (for mobile), Thunderbird (email), Sunbird (calendar) and Instantbird.
Gecko is also used by Sugar for the OLPC XO-1 computer.[12] Gecko is used as a complete implementation of the XUL (XML User Interface Language). Gecko currently defines the XUL specification.
The following table compares the different versions of Gecko:
Gecko version | All platforms | Windows only | Mac only | *nix only | *nixmobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Firefox | Netscape[u 1] | Mozilla[u 1] | SeaMonkey | Flock | Songbird | Beonex | Lunascape[u 2][u 3] | K-Meleon | My Internet Browser | Pale Moon | Camino | Galeon | Epiphany[u 4][u 2] | Kazehakase[u 2] | MicroB | |
0.6 | 6.0 | 0.6 | 0.6[13] | |||||||||||||
0.8 | 0.8 | 0.3 | ||||||||||||||
0.9.2 | 6.1 | 0.9.2 | ||||||||||||||
0.9.4 | 6.2 | 0.9.4 | 0.5 | |||||||||||||
0.9.4.1 | 6.2.2 | 0.9.4.1 | 0.7[13] | |||||||||||||
0.9.5 | 0.9.5 | 0.6 | ||||||||||||||
0.9.7 | 0.9.7 | 1.0.2 | ||||||||||||||
1.0.1 | 7.0 | 1.0.1 | 0.8.1[14] | |||||||||||||
1.0.2 | 1.0.2 | 0.8.2[15] | ||||||||||||||
1.1 | 1.1 | 0.9pre[13] | ||||||||||||||
1.2b | 0.1 | 1.2b | 0.7 | |||||||||||||
1.3a | 0.5 | 1.3a | ||||||||||||||
1.4 | 7.1 | 1.4 | ||||||||||||||
1.4.1 | 1.4.1 | 1.0.4 | ||||||||||||||
1.5 | 0.7 | 1.5 | 0.8 | |||||||||||||
1.7 | 1.0 | 1.7 | 2.0 | 0.2.8 | ||||||||||||
1.7.2 | 7.2 | 1.7.2 | ||||||||||||||
1.7.5 | 8.0.2[u 3] | 1.7.5 | 0.9 | |||||||||||||
1.8.0 | 1.5 | 1.0 | 0.7 | 0.2 | 1.0 | 1.0 | 1.0 | |||||||||
1.8.1 | 2.0 | 9.0 | 1.1 | 1.0 | 4.8 | 1.1, 1.5 | 2.0 | 1.6.5 | 2.16 | |||||||
1.9.0 | 3.0 | 2.0 - 2.6 | 0.5 - 1.4 | 2.2 | 2.0 | 2.22 | ||||||||||
1.9.1 | 3.5 | 2.0 | 5.0 | 1.6 | 3.0 | 3.5 | ||||||||||
1.9.2 | 3.6 | 1.9.3 | 6.3 | 1.7 | 4.0 | 3.6[u 5] | 2.1a1[16] | 1.7.4.8[u 6] | ||||||||
2.0[u 7] | 4.0 | 2.1 | 4.0 | |||||||||||||
5.0[u 8] | 5.0 | 2.2 | 5.0 | |||||||||||||
6.0[u 8] | 6.0 | 2.3 | 6.0 | |||||||||||||
7.0[u 8] | 7.0 | 2.4 | 7.0 | |||||||||||||
8.0[u 8] | 8.0a2 | |||||||||||||||
9.0[u 8] | 9.0a1 | |||||||||||||||
Gecko version | Firefox | Netscape[u 1] | Mozilla[u 1] | SeaMonkey | Flock | Songbird | Beonex | Lunascape[u 2][u 3] | K-Meleon | My Internet Browser | Pale Moon | Camino | Galeon | Epiphany[u 4][u 2] | Kazehakase[u 2] | MicroB |
All platforms | Windows only | Mac only | *nix only | *nixmobile |
WebKit is a layout engine designed to allow web browsers to render web pages. WebKit powers Apple Safari and Google Chrome and by August 2011 held nearly 30% of desktop browser market share between them. It is also used as the basis for the experimental browser included with the Amazon Kindle ebook reader, as well as the default browser in the iOS and Android mobile operating systems. The WebKit engine provides a set of classes to display web content in windows, and implements browser features such as following links when clicked by the user, managing a back-forward list, and managing a history of pages recently visited.
WebKit was originally derived by Apple Inc. from the Konqueror browser's KHTML software library for use as the engine of Safari web browser, and has now been further developed by individuals from KDE, Apple Inc., Nokia, Google, Bitstream, Torch Mobile, Samsung, Igalia, and others.[2]Mac OS X, Windows, GNU/Linux, and some other Unix-like operating systems are supported by the project.[3]
WebKit's WebCore and JavaScriptCore components are available under the GNU Lesser General Public License, and the rest of WebKit is available under a BSD-style license.[4]
WebKit is used as the rendering engine within Safari on Windows, Mac OS X and iOS. Other applications on Mac OS X make use of WebKit, such as Apple's e-mail client Mail and the 2008 version of Microsoft's Entourage personal information manager, both of which make use of WebKit to render e-mail messages with HTML content.
New web browsers have been built around WebKit such as the S60 browser[29] on Symbian mobile phones, Blackberry Browser (ver 6.0+), Midori, Shiira, Chrome browser,[30][31] Uzbl,Maxthon 3, xxxterm, and the Android Web browser. KDE Projects Rekonq Web Browser and Plasma Workspaces also use it as the native web rendering engine. WebKit has been adopted as the rendering engine in OmniWeb, iCab and Epiphany replacing their original rendering engines.[32] Epiphany supported both Gecko and WebKit for some time, but the team decided that Gecko's release cycle and future development plans would make it too cumbersome to continue supporting it. HP's Palm WebOS uses WebKit as the basis of its application runtime. The latest interface update for Valve Corporation's Steam employs WebKit to render its interface and built-in browser.[33] WebKit is used to render HTML and run JavaScript in the Adobe Integrated Runtime application platform. In Adobe Creative Suite CS5, WebKit is used to render some parts of the user interface. As of the first half of 2010, analyst estimates place the cumulative number of mobile handsets shipped with a WebKit-based browser at 350 million.[34] WebKit will continue to dominate the mobile industry as the market penetration of smartphones, the engine's primary contributors, increases. The introduction of tablets will also be a contributing factor, since many tablets have the Android or Apple iOS operating system (iPad, iPad 2) installed. In 2011, from January to August, the market share of Android OS alone increased from 15% to 20%. Combining the increase of smartphone and tablet sales, coupled with the increasing market share of Chrome, WebKit could become the dominant web browser engine in 2012. Consider, for example, that for the period of January to September 2011, the market share of Google's Chrome browser went from 15% to 23.5%, and Safari maintained a 5-6% share while usage of both Internet Explorer and Mozilla decreased significantly. If this growth continues, total usage of WebKit (Chrome, Safari, and smartphones/tablets) will surpass 50% by the end of 2012. [35]
Subscribe to:
Posts (Atom)