Web标准是什么?百度一下这个问题,得到下面的答案:
Web标准是一些规范的集合,是由W3C和其他的标准化组织共同制定的,以用它来创建和解释网页的基本内容。
维基百科如此描述Web标准:
网页标准(Web standards)或Web标准一般是指有关于万维网各个方面的定义和说明的正式标准以及技术规范。
近年来,这个术语也时常和一套建立网站的标准化的最佳实践方法、网页设计的原理、以及上述方法的衍生物连系在一起。
如果有网站或网页宣称遵循网页标准,通常就表示他们的网页符合HTML、CSS、JavaScript等标准。HTML的部分也要满足无障碍性以及HTML语义的要求。
有答案将Web标准分为结构、表现和行为三个方面,这种说法无从溯源。我不太理解,数据传输(HTTP)属于哪个部分呢?CSS属性pointer-events,是属于表现还是行为呢?
网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的标准也分三方面:结构化标准语言主要包括XHTML和XML,表现标准语言主要包括CSS,行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。
维基百科解释,当谈及网页标准时,下列各项一般也会被视为基本要素︰
- W3C所推荐的标记语言,例如HTML、XHTML、SVG、XForms
- W3C所推荐的样式表,特别是CSS
- Ecma国际所制订的ECMAScript标准,它是一种更为通用的JavaScript
- W3C所推荐的DOM
- 对于从URI参考的网页以及各种资源都要有格式正确的名称和位址,这部分应以IETF的RFC 2396为基准
- 传送页面、传回资料或请求其它的资源时,须正确的使用HTTP和MIME,这部分应以IETF的RFC 2616为基准
Web简史
- 20 世纪 60 年代末期,美国军方开发了一个名为 ARPANET 的通信网络。
- 1980 年,Tim Berners-Lee(通常称之为 TimBL)写了一个叫 ENQUIRE 的笔记本程序,这个程序实现了不同节点之间链接的概念。
- 1989 年,TimBL 在 CERN 撰写了 《Information Management: A Proposal》 和《HyperText》 ;这两个出版物共同为 Web 将如何工作做了铺垫。
- 1990 年,TimBL 已经创建了运行第一个版本的 Web 所需的所有东西—— HTTP,HTML,名为 WorldWideWeb 的第一个 Web 浏览器,一个 HTTP 服务器和一些用于查看的网页。
- 1991 年,他在 alt.hypertext 新闻组上宣布了他的创作,那一刻标志着 Web 的首次公开。
我们今天认为的“Web”系统由几个组件组成:
- HTTP 协议,管理服务器和客户端之间的数据传输。
- 要访问 Web 组件,客户端提供唯一的通用标识符,称为 URL(统一资源定位符)或 URI(统一资源标识符)(正式称为通用文档标识符(UDI))。
- HTML(超文本标记语言)是发布 Web 文档的最常用格式。
超文本标记语言(HyperText Markup Language)
物理学家Tim Berners-Lee在欧洲核子研究中心(CERN)在承包工程期间,为使CERN的研究人员使用并共享文档,他提出并创建原型系统ENQUIRE。1989年,Tim Berners-Lee在一份备忘录中提出一个基于互联网的超文本系统。
- 1990 年,由于对 Web 未来发展的远见,Tim Berners-Lee 提出了 超文本 的概念,并在第二年在 SGML 的基础上将其正式定义为一个标记语言。
- IETF 于 1993 年正式开始制定 HTML 规范,并在经历了几个版本的草案后于 1995 年发布了 HTML 2.0 版本。
- 1994 年,Berners-Lee 为了 Web 发展而成立了 W3C 。
- 1996 年,W3C 接管了 HTML 的标准化工作,并在 1 年后发布了 HTML 3.2 推荐标准。
- 1999 年,HTML 4.0 发布,并在 2000 年成为 ISO 标准。
- 自那以后,W3C 几乎放弃了 HTML 而转向 XHTML,并于 2004 年成立了另一个独立的小组 WHATWG。
- 2004年,WHATWG 后来又转回来参与了 HTML5 标准的制定,两个组织(译注:即 W3C 和 WHATWG)在 2008 年发布了第一份草案,并在 2014 年发布了 HTML5 标准的最终版。
层叠样式表(Cascading Style Sheets)
HTML规范虽然规定了网页中的标题、段落应该使用的标签,但是没有涉及这些内容应该以何种样式(比如大小、位置、间距、缩进等属性)呈现在浏览器中。从1990年代初HTML被发明开始,样式表就以各种形式出现了。不同的浏览器结合了它们各自的样式语言,读者(也就是浏览网页的用户)可以使用这些样式语言来调节网页的显示方式。
- 1993年,Robert Raisch提出了一种名为“RRP”的样式规则建议。
- 1994年,Håkon Wium Lie提出层叠HTML样式表,1995年他与波斯一起再次展示这个建议。
- 1996年底,Håkon Wium Lie与Gijsbert (Bert) Bos发布了CSS规范的第1个版本。
- 1997年初,W3C组织了专门管CSS的工作组,1998年5月出版的第2版规则。
- 2003年,Dave Shea推出了一个名为“CSS禅意花园”("CSS Zen Garden")的站点。
- 2006年到2009年,“DIV+CSS”布局逐步取代缺乏灵活性的传统表格布局,无表格网页设计成为网页内容布局的主流方案。
- CSS3早于1999年已经开始制订,直到2011年,CSS 3 Color Module终于发布为W3C Recommendation。
- 2011年开始了设计CSS4。
脚本语言(ECMAScript / JavaScript)
在网络发展的这些年,网页只能是静态的,缺乏在浏览器中加载网页后的动态行为能力。公司的创始人Marc Lowell Andreessen认为HTML需要一种胶水语言,让网页设计师和兼职程序员可以很容易地使用它来组装图片和插件之类的组件,且代码可以直接编写在网页标记中。
- 1993年,NCSA发表了NCSA Mosaic,这是最早流行的图形接口网页浏览器。
- 1994年,Mosaic的主要开发人员创立了Netscape公司,并雇用了许多原来的NCSA Mosaic开发者用来开发Netscape Navigator。
- 1995年,网景招募Brendan Eich花了十天时间设计了Mocha,9月改名为LiveScript,12月重命名为JavaScript。
- 1995年,微软首次推出Internet Explorer,对Netscape Navigator解释器进行了逆向工程,创建了JScript。
- 1996年,网景正式向ECMA(欧洲计算机制造商协会)提交语言标准。
- 1997年,ECMA以JavaScript语言为基础制定了ECMAScript标准规范ECMA-262。
Web标准
这些标准和规范往往彼此相依,其中一部分甚至延伸到互联网,而不仅限于万维网,并直接或间接的影响到网站以及Web服务的发展和管理。同时也考量到网页或网站的协同工作能力、无障碍性、易用性。广义上的网页标准由下列要素所构成︰
- 由万维网协会(W3C)所发布的推荐标准
- 由网页超文字应用技术工作小组(WHATWG)所制作的活动标准
- 由互联网工程任务组(IETF)所发布的电脑与通讯技术文件(RFC)文件
- 由国际标准化组织(ISO)所发布的标准
- 由Ecma国际(ECMA的前身)所发布的标准
- 由统一码联盟(Unicode Consortium)所发布的Unicode标准以及各种Unicode技术报告(UTRs)
- 由Internet号码分配局(IANA)所维护的名称和号码的登录
W3C
W3C是万维网的主要国际标准组织,为半自治非政府组织,为解决网络应用中不同平台、技术和开发者带来的不兼容问题,保障网络信息流通得顺利完整,万维网联盟制定了一系列标准并督促网络应用开发者和内容提供者遵循这些标准。
WHATWG
WHATWG是一个以推动网络HTML标准为目的而成立的组织,2004年由Apple公司、Mozilla基金会和Opera软件公司所组成,针对万维网联盟(W3C)网页标准的发展缓慢,以及W3C意图放弃HTML转而发展以XML为基础的技术而成立。
IETF
IETF是一个开放的标准组织,负责开发和推广自愿互联网标准(Internet Standard,英文缩写为STD),特别是构成TCP/IP协议族(TCP/IP)的标准,作为一项由美国联邦政府支持的活动开始的,但自1993年以来,它在互联网协会的支持下作为标准制定职能运作。
ECMA
ECMA是一个致力于信息和通讯系统标准化的国际性行业组织,1994年之前名为欧洲计算机制造商协会。
ISO
ISO成立于1947年2月23日,制定全世界工商业国际标准的国际标准建立机构。
Unicode Consortium
Unicode Consortium是统筹Unicode发展的非营利组织,成立于1991年1月3日,由三位软件工程师发起,分别是当时任职施乐的Joe Becker、Lee Collins,以及当时任职苹果的Mark Davis。
IANA
IANA是一家互联网地址指派机构,管理国际互联网中使用的IP地址、域名和许多其它参数的机构。