网页浏览器是个显示网页服务器或档案系统内的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_网页浏览器相关推荐

  1. Browsers Series_网页浏览器列表

    一.图形界面 1.基于Gecko排版引擎: Mozilla Firefox Mozilla Suite Camino 3B Aphrodite BackArrow Beonex Communicato ...

  2. java调用浏览器组件来_Java 网页浏览器组件介绍

    在使用 Java 开发客户端程序时,有时会需要在界面中使用网页浏览器组件,用来显示一段 HTML 或者一个特定的网址.本文将介绍在界面中使用浏览器组件的四种方法,给出示例的代码,并且分析每种方法的优点 ...

  3. 网页浏览器的发展详史

    今天我们换一个角度再来看浏览器的发展史,介绍的是各个浏览器的成长史.今天说的东西来自国外的一个网站 2009 年的一篇文章,国内原来有人翻译过,但好像是借助谷歌翻译的,文理并不通顺也没有注明原始出处, ...

  4. 解决root用户不能打开Chromium网页浏览器

    解决root用户不能打开Chromium网页浏览器 在Kali Linux中,安装Chromium网页浏览器后,默认只允许普通用户打开.为了方便用户更好的使用该浏览器,这里将介绍下使用root用户打开 ...

  5. 如何自动填充网页表单_iCab for Mac(web网页浏览器)

    iCab for Mac是一款小巧实用的web网页浏览器,支持HTML4,图像过滤,cookie过滤,书签,java和javascript支持,搜索模式,从资源管理器导入Web档案,下载管理器以及许多 ...

  6. QT学习:网络应用开发练习(简单网页浏览器)

    前两篇文章编程所使用的QUdpSocket.QTcpSocket和QTcpServer类都是网络传输层上的类,它们封装实现的是底层的网络进程通信(Socket通信)的功能.而Qt网络应用开发则是要在此 ...

  7. 网页浏览器知道我们的哪些信息?(1)

    [编者按]本文最早发布于 SecureMac 博客,主要介绍网络浏览器存储了哪些用户数据,这些数据对用户的隐私有何影响.文章系国内 ITOM 管理平台 OneAPM 编译呈现. 随着我们一步步地探入充 ...

  8. linux终端下的网页浏览器w3m

    w3m是终端下的一个网页浏览器,可以查看图片,并且中文字体支持的也比较好. 在centos6.2下安装: sudo yum install w3m 现在还不能查看网页上的图片,还需要安装w3m-img ...

  9. java实现浏览器_利用Java实现网页浏览器

    使用VC,VB或者C#的开发者们对于在程序里面嵌入一个网页来说,那真是小事一桩.但是在JAVA里面,却几乎是不可能实现的任务. JEditorPane虽然说可以打开网页,但是它那解析速度以及解析质量, ...

最新文章

  1. 通知 | 首届中国心电智能大赛复赛开启
  2. LINQ 101——分组、Set、转换、Element
  3. Pair Poject 1 【新双人贪吃蛇】本组:龚逸 合作者:庞俊
  4. CentOS安装高版本gcc
  5. ML重要概念:梯度(Gradient)与梯度下降法(Gradient Descent)
  6. Java基础 JSP九大内置对象
  7. 同一个html页面中两个area,HTML中的map和area标签
  8. Denoise 方法汇总
  9. NBA球星杜兰特之前投资Coinbse目前已获利达61.5倍
  10. matlab ode 实数,关于ode45中erf函数(输入必须为实数完全数的报错问题)
  11. 2018计算机专硕学硕,2018考生快上车!专硕VS学硕,究竟怎么选?
  12. GEE计算LST温度反演
  13. Android11更新包,Android11系统
  14. 如何使 SAP UI5 SmartField 在运行时渲染成超链接的形式并支持跳转的试读版
  15. Python制作牛奶冻
  16. Python Flask开发简单http api接口 示例
  17. 计算机开机界面图片怎么修改,怎么修改Win7开机登录界面壁纸 Win7开机登录界面壁纸修改图文教程...
  18. 在Swagger中请求API返回400BadRequest
  19. Java虚拟机(jvm)——垃圾收集器与内存分配策略
  20. 瞬间让你效率提高一倍的高效学习方法

热门文章

  1. wincc报表,通用报表,数据报表,独立于任何组态软件运行(
  2. 产能节拍php,优化加工节拍实现高效加工
  3. 未明学院:量化金融项目实战,成为FinTech风口下掌握数据分析技能的复合型人才!
  4. 搭建一个简单的云计算有哪些简单的配置文件
  5. UI设计师是做什么的?工作内容是什么?
  6. 7-18 出租车计价
  7. 【Opencv图像处理】BGB转HSV与颜色检测
  8. 关于STM32软硬件兼容性相关的知识
  9. 09internet 协议安全问题
  10. 如何快速计算生成模型的FID、IS、sFID、Precision、Recall等关键评价指标?