Browsers Series_网页浏览器
网页浏览器是个显示网页服务器或档案系统内的HTML文件,并让用户与这些文件互动的一种软件。个人电脑上常见的网页浏览器包括微软的Internet Explorer、Mozilla的Firefox、Netscape、Opera和Safari。浏览器是最经常使用到的客户端程序。万维网是全球最大的连结文件网络文库。
协定和标准
网页浏览器主要通过HTTP协议连接网页服务器而取得网页,HTTP容许网页浏览器送交资料到网页服务器并且获取网页。目前最常用的HTTP是HTTP/1.1,这个协议在RFC2616中被完整定义。HTTP/1.1 有其一套Internet Explorer并不完全支援的标准,然而许多其他当代的网页浏览器则完全支援这些标准。
网页的位置以URL(统一资源定位符)指示,此乃网页的地址;以http:开首的便是通过HTTP协议登陆。很多浏览器同时支援其他类型的URL及协议,例如ftp:是FTP(档案传送协议)、gopher:是Gopher及https:是HTTPS(以SSL加密的HTTP)。
网页通常使用HTML(超文本连结标记语言)文件格式,并在HTTP协议内以MIME内容形式来定义。大部分浏览器均支援许多HTML以外的文件格式,例如JPEG、PNG和GIF图像格式,还可以利用插件来支援更多文件类型。在HTTP内容类型和URL协议结合下,网页设计者便可以把图像、动画、视频、声音和流媒体包含在网页中,或让人们透过网页而取得它们。
早期的网页浏览器只支援简易版本的HTML。专属软件的浏览器的迅速发展导致非标准的HTML代码的产生。这导致了浏览器的兼容性的问题。现代的浏览器(Mozilla、Opera和Safari)支援标准的HTML和XHTML(从HTML 4.01版本开始)。他们显示出来的网页效果都一样。Internet Explorer仍未完全支援HTML 4.01及XHTML 1.x。现在许多网站都是使用所见即所得的HTML编辑软件来建构的,这些软件包括Macromedia Dreamweaver和Microsoft Frontpage等。他们通常缺省产生非标准HTML;这阻碍了W 3C 制定统一标准,尤其是XHTML和CSS(层叠样式表,设计网页时用)。
有一些浏览器还加载了一些附加组件来Usenet新闻组、IRC(因特网中继聊天)和电子邮件。支援的协议包括NNTP(网络新闻传输协议)、SMTP(简单邮件传输协议)、IMAP(交互邮件访问协议)和POP(邮局协议)。
简史
Tim Berners-Lee是第一个使用超文本来分享资讯,及于1990年发明了首个网页浏览器--World Wide Web的人。在1991年3月,他把这发明介绍给了给他在CERN工作的朋友。 从那时起,浏览器的发展就和网络的发展联系在了一起。
当时,网页浏览器被视为一个能够处理CERN庞大电话簿的实用工具。在与用户互动的前提下,网页浏览器跟据gopher和telnet协议,允许所有用户能轻易地浏览别人所编写的网站。可是,其后加插图像进浏览器的举动使之成为了因特网的“杀手程序”。
NCSA Mosaic促使了因特网的迅速发展。它是一个先在Unix运行的图像浏览器;很快便发展到在Apple Macintosh和Microsoft Windows亦能运行。1993年9月发表了1.0版本。NCSA中Mosaic项目的负责人Marc Andreesen辞职并建立了网景通讯公司。
网景公司在1994年10月发布了他们的旗舰产品Navigator(导航者)。但第二年Netscape的优势就被削弱了。错失了因特网浪潮的微软在这个时候匆促的购入了Spyglass公司的技术,改成Internet Explorer,掀起了软件巨头微软和网景之间的浏览器大战。这同时也加快了万维网的发展。
这场战争把网络带到了千百万普通电脑用户面前,但同时显露了因特网商业化如何妨碍统一标准的制定。微软和网景都在他们的产品中加入了许多互不兼容的HTML扩展代码,并试图以这些特点来取胜。1998年,网景公司承认他们的市场占有率已跌至无法挽回的地步,这场战争便随之而结束。微软能取胜的其中一个因素是它把浏览器与其操作系统一并出售(OEM,原始设备制造);这亦使它面对反垄断诉讼。
网景公司以开放源代码迎战,创造了Mozilla。但这个并不能挽回Netscape的市场占有率。在1998年底美国在线收购了网景公司。在发展初期,Mozilla计划为着吸引开发者而挣扎;但至2002年,它发展成一个稳定而强大的因特网套件。Mozilla 1.0的出现被视为其里程碑。同年,衍生出Mozilla Firefox。Firefox 1.0于2004年发表。及至2005年,Mozilla及其衍生产品约占10%网络交通量。
Opera是一个灵巧的浏览器。它发布于1996年。目前它在手持电脑上十分流行。它在个人电脑网络浏览器市场上的占有率则比较小。
Lynx浏览器仍然是Linux市场上十分流行的浏览器。它是全文字模式的浏览器,视觉上并不讨好。还有一些有着进阶功能的同类型浏览器,例如Links和它的分支ELinks。
纵然Macintosh的浏览器市场现在亦同样被Internet Explorer和Netscape占据,但未来有可能会是苹果电脑自行推出的Safari的世界。Safari是基于Konqueror这个开放源代码浏览器的KHTML布局引擎而制成的。Safari是Mac OS X的缺省浏览器。
2003年,微软宣布不会再推出的独立的Internet Explorer,但却会变成视窗平台的一部份;同时也不会再推出任何Macintosh版本的Internet Explorer。不过,于2005年初,微软却改变了计划,并宣布将会为Windows XP、Windows Server 2003和快将发表的Windows Vista操作系统推出Internet Explorer 7。
万维网和网页浏览器的功能
不同的浏览器有不同的功能,现时浏览器和网页会有很多功能和技术是以往没有的。如之前提到的,因为浏览器战的出现,浏览器和万维网得以迅速但混乱地扩展。
以下是较为人熟悉的功能列表:
支援标准
HTTP(超文本传输协议)和HTTPS
HTML(超文本连结标记语言),XHTML(可扩展的超文本标记语言)及XML(可扩展标记语言)
图形档案格式如GIF、PNG、JPEG、SVG
CSS(层叠样式表)
JavaScript(动态网页DHTML)
Cookie 让网站可以追踪浏览者
电子证书
Macromedia Flash
Java applet
Favicons
基本功能
书签管理
下载管理
网页内容缓存
透过第三方插件(plugins)支援多媒体
附加功能
网址和表单资料自动完成
分页浏览
禁止弹出式广告
广告过滤
Browsers Series_网页浏览器相关推荐
- Browsers Series_网页浏览器列表
一.图形界面 1.基于Gecko排版引擎: Mozilla Firefox Mozilla Suite Camino 3B Aphrodite BackArrow Beonex Communicato ...
- java调用浏览器组件来_Java 网页浏览器组件介绍
在使用 Java 开发客户端程序时,有时会需要在界面中使用网页浏览器组件,用来显示一段 HTML 或者一个特定的网址.本文将介绍在界面中使用浏览器组件的四种方法,给出示例的代码,并且分析每种方法的优点 ...
- 网页浏览器的发展详史
今天我们换一个角度再来看浏览器的发展史,介绍的是各个浏览器的成长史.今天说的东西来自国外的一个网站 2009 年的一篇文章,国内原来有人翻译过,但好像是借助谷歌翻译的,文理并不通顺也没有注明原始出处, ...
- 解决root用户不能打开Chromium网页浏览器
解决root用户不能打开Chromium网页浏览器 在Kali Linux中,安装Chromium网页浏览器后,默认只允许普通用户打开.为了方便用户更好的使用该浏览器,这里将介绍下使用root用户打开 ...
- 如何自动填充网页表单_iCab for Mac(web网页浏览器)
iCab for Mac是一款小巧实用的web网页浏览器,支持HTML4,图像过滤,cookie过滤,书签,java和javascript支持,搜索模式,从资源管理器导入Web档案,下载管理器以及许多 ...
- QT学习:网络应用开发练习(简单网页浏览器)
前两篇文章编程所使用的QUdpSocket.QTcpSocket和QTcpServer类都是网络传输层上的类,它们封装实现的是底层的网络进程通信(Socket通信)的功能.而Qt网络应用开发则是要在此 ...
- 网页浏览器知道我们的哪些信息?(1)
[编者按]本文最早发布于 SecureMac 博客,主要介绍网络浏览器存储了哪些用户数据,这些数据对用户的隐私有何影响.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 随着我们一步步地探入充 ...
- linux终端下的网页浏览器w3m
w3m是终端下的一个网页浏览器,可以查看图片,并且中文字体支持的也比较好. 在centos6.2下安装: sudo yum install w3m 现在还不能查看网页上的图片,还需要安装w3m-img ...
- java实现浏览器_利用Java实现网页浏览器
使用VC,VB或者C#的开发者们对于在程序里面嵌入一个网页来说,那真是小事一桩.但是在JAVA里面,却几乎是不可能实现的任务. JEditorPane虽然说可以打开网页,但是它那解析速度以及解析质量, ...
最新文章
- 通知 | 首届中国心电智能大赛复赛开启
- LINQ 101——分组、Set、转换、Element
- Pair Poject 1 【新双人贪吃蛇】本组:龚逸 合作者:庞俊
- CentOS安装高版本gcc
- ML重要概念:梯度(Gradient)与梯度下降法(Gradient Descent)
- Java基础 JSP九大内置对象
- 同一个html页面中两个area,HTML中的map和area标签
- Denoise 方法汇总
- NBA球星杜兰特之前投资Coinbse目前已获利达61.5倍
- matlab ode 实数,关于ode45中erf函数(输入必须为实数完全数的报错问题)
- 2018计算机专硕学硕,2018考生快上车!专硕VS学硕,究竟怎么选?
- GEE计算LST温度反演
- Android11更新包,Android11系统
- 如何使 SAP UI5 SmartField 在运行时渲染成超链接的形式并支持跳转的试读版
- Python制作牛奶冻
- Python Flask开发简单http api接口 示例
- 计算机开机界面图片怎么修改,怎么修改Win7开机登录界面壁纸 Win7开机登录界面壁纸修改图文教程...
- 在Swagger中请求API返回400BadRequest
- Java虚拟机(jvm)——垃圾收集器与内存分配策略
- 瞬间让你效率提高一倍的高效学习方法