`

【转载】WEB2.0标准教程:WEB标准是什么?

阅读更多

WEB2.0标准教程:WEB标准是什么? <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?>

WEB标准

WEB标准不是某一个标准,而是一系列标准的集合。网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的标准也分三方面:结构化标准语言主要包括XHTML和XML,表现标准语言主要包括CSS,行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。这些标准大部分由W3C起草和发布,也有一些是其他标准组织制订的标准,比如ECMA(European Computer Manufacturers Association)的ECMAScript标准。我们来简单了解一下这些标准:

1.结构标准语言

(1)XML 

XML是The Extensible Markup Language(可扩展标识语言)的简写。目前推荐遵循的是W3C于2000年10月6日发布的XML1.0,参考(www.w3.org/TR/2000/REC-XML-20001006)。和HTML一样,XML同样来源于SGML,但XML是一种能定义其他语言的语。XML最初设计的目的是弥补HTML的不足,以强大的扩展性满足网络信息发布的需要,后来逐渐用于网络数据的转换和描述。关于XML的好处和技术规范细节这里就不多说了,网上有很多资料,也有很多书籍可以参考。

(2)XHTML 

XHTML是The Extensible HyperText Markup Language可扩展标识语言的缩写。目前推荐遵循的是W3C于2000年1月26日推荐XML1.0(参考 http://www.w3.org/TR/xhtml1 )。XML虽然数据转换能力强大,完全可以替代HTML,但面对成千上万已有的站点,直接采用XML还为时过早。因此,我们在HTML4.0的基础上,用XML的规则对其进行扩展,得到了XHTML。简单的说,建立XHTML的目的就是实现HTML向XML的过渡。

2. 表现标准语言

CSS是Cascading Style Sheets层叠样式表的缩写。目前推荐遵循的是W3C于1998年5月12日推荐CSS2(参考 http://www.w3.org/TR/CSS2/ )。W3C创建CSS标准的目的是以CSS取代HTML表格式布局、帧和其他表现的语言。纯CSS布局与结构式XHTML相结合能帮助设计师分离外观与结构,使站点的访问及维护更加容易。

3.行为标准

(1)DOM

DOM是Document Object Model文档对象模型的缩写。根据W3C DOM规范( http://www.w3.org/DOM/ ),DOM是一种与浏览器,平台,语言的接口,使得你可以访问页面其他的标准组件。简单理解,DOM解决了Netscaped的Javascript和Microsoft的Jscript之间的冲突,给予web设计师和开发者一个标准的方法,让他们来访问他们站点中的数据、脚本和表现层对像。

(2) ECMAScript

ECMAScript是ECMA(European Computer Manufacturers Association)制定的标准脚本语言(JAVAScript)。目前推荐遵循的是ECMAScript 262( http://www.ecma.ch/ecma1/STAND/ECMA-262.HTM )。

WEB2.0标准教程:应用WEB标准建设网站有什么好处?

我们大部分人都有深刻体验,每当主流浏览器版本的升级,我们刚建立的网站就可能变得过时,我们就需要升级或者重新建造一遍网站。例如1996-1999年典型的"浏览器大战",为了兼容Netscape和IE,网站不得不为这两种浏览器写不同的代码。同样的,每当新的网络技术和交互设备的出现,我们也需要制作一个新版本来支持这种新技术或新设备,例如支持手机上网的WAP技术。类似的问题举不胜举:网站代码臃肿、繁杂浪费了我们大量的带宽;针对某种浏览器的DHTML特效,屏蔽了部分潜在的客户;不易用的代码,残障人士无法浏览网站等等。这是一种恶性循环,是一种巨大的浪费。

如何解决这些问题呢?有识之士早已开始思考,需要建立一种普遍认同的标准来结束这种无序和混乱。商业公司(Netscape、Microsoft等)也终于认识到统一标准的好处,因此在W3C(W3C.org)的组织下,网站标准开始被建立(1998年2月10日发布XML1.0为标志),并在网站标准组织(webstandards.org)的督促下推广执行。

简单说,网站标准的目的就是:

● 提供最多利益给最多的网站用户 

● 确保任何网站文挡都能够长期有效 

● 简化代码、降低建设成本 

● 让网站更容易使用,能适应更多不同用户和更多网路设备 

● 当浏览器版本更新,或者出现新的网络交互设备时,确保所有应用能够继续正确执行。 

对于网站设计和开发人员来说,遵循网站标准就是使用标准;对于你的网站用户来说,网站标准就是最佳体验。

采用网站标准的好处

对网站浏览者的好处:

● 文件下载与页面显示速度更快; 

● 内容能被更多的用户所访问(包括失明、视弱、色盲等残障人士); 

● 内容能被更广泛的设备所访问(包括屏幕阅读机、手持设备、搜索机器人、打印机、电冰箱等等) 

● 用户能够通过样式选择定制自己的表现界面 

● 所有页面都能提供适于打印的版本 

对网站所有者的好处:

● 更少的代码和组件,容易维护 

● 带宽要求降低(代码更简洁),成本降低。举个例子:当 ESPN.com 使用 CSS改版后,每天节约超过两兆字节(terabytes)的带宽。 

● 更容易被搜寻引擎搜索到 

● 改版方便,不需要变动页面内容 

● 提供打印版本而不需要复制内容 

● 提高网站易用性。在美国,有严格的法律条款(Section 508)来约束政府网站必须达到一定的易用性,其他国家也有类似的要求。 

WEB2.0标准教程:如何应用WEB标准改善现有网站?

我们大部分的设计师依旧在采用传统的表格布局、表现与结构混杂在一起的方式来建立网站。学习使用XHTML+CSS的方法需要一个过程,使现有网站符合网站标准也不可能一步到位。最好的方法是循序渐进,分阶段来逐步达到完全符合网站标准的目标。如果你是新手,或者对代码不是很熟悉,也可以采用遵循标准的编辑工具,例如Dreamweaver MX 2004,它是目前支持CSS标准最完善的工具。

1.初级改善

为页面添加正确的DOCTYPE  

很多设计师和开发者都不知道什么是DOCTYPE,DOCTYPE有什么用。DOCTYPE是document type的简写。主要用来说明你用的XHTML或者HTML是什么版本。浏览器根据你DOCTYPE定义的DTD(文档类型定义)来解释页面代码。所以,如果你不注意设置了错误的DOCTYPE,结果会让你大吃一惊。XHTML1.0提供了三种DOCTYPE可选择:

(1)过渡型(Transitional )

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

(2)严格型(Strict )

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 

(3)框架型(Frameset )

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd"> 

对于我们初级改善来说,只要选用过渡型的声明就可以了。它依然可以兼容你的表格布局、表现标识等,不至于让你觉得变化太大,难以掌握。

Tip:你懒得输入上面过渡型代码的话,可以访问http://www.macromedia.com/网站的首页,然后查看源代码,把head区同样的代码拷贝粘贴就可以了。

设定一个名字空间(Namespace) 

直接在DOCTYPE声明后面添加如下代码:

<html XMLns="http://www.w3.org/1999/xhtml" > 

一个namespace是收集元素类型和属性名字的一个详细的DTD,namespace声明允许你通过一个在线地址指向来识别你的namespace。只要照样输入代码就可以。

声明你的编码语言 

为了被浏览器正确解释和通过标识校验,所有的XHTML文档都必须声明它们所使用的编码语言。代码如下:

<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />  

这里声明的编码语言是简体中文GB2312,你如果需要制作繁体内容,可以定义为BIG5。

用小写字母书写所有的标签 

XML对大小写是敏感的,所以,XHTML也是大小写有区别的。所有的XHTML元素和属性的名字都必须使用小写。否则你的文档将被W3C校验认为是无效的。例如下面的代码是不正确的:

<TITLE>公司简介</TITLE> 

正确的写法是:

<title>公司简介</title> 同样的,<P>改成<p>,<B>改成<b> 等等。

这步转换很简单。 

为图片添加 alt 属性 

为所有图片添加alt属性。alt属性指定了当图片不能显示的时候就显示供替换文本,这样做对正常用户可有可无,但对纯文本浏览器和使用屏幕阅读机的用户来说是至关重要的。只有添加了alt属性,代码才会被W3C正确性校验通过。注意的是我们要添加有意义的alt属性,象下面这样的写法毫无意义:

<img src="logo_unc_120x30.gif" alt="logo_unc_120x30.gif"> 

正确的写法:

<img src="logo_unc_120x30.gif" alt="UNC公司标志,点击返回首页"> 

给所有属性值加引号 

在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。

例:height="100",而不能是height=100。

关闭所有的标签 

在XHTML中,每一个打开的标签都必须关闭。就象这样:

<p>每一个打开的标签都必须关闭。</p> <b>HTML可以接受不关闭的标,XHTML就不可以。</b> 

这个规则可以避免HTML的混乱和麻烦。举例来说:如果你不关闭图像标签,在一些浏览器中就可能出现CSS显示问题。用这种方法能确保页面和你设计的一样显示。需要说明的是:空标签也要关闭,在标签尾部使用一个正斜杠"/"来关闭它们自己。例如:

<br /> <img src="webstandards.gif" /> 

经过上述七个规则处理后,页面就基本符合XHTML1.0的要求。但我们还需要校验一下是否真的符合标准了。我们可以利用W3C提供免费校验服务(http://validator.w3.org/)。发现错误后逐个修改。在后面的资源列表中我们也提供了其他校验服务和对校验进行指导的网址,可以作为W3C校验的补充。当最后通过了XHTML验证,恭喜你已经向网站标准迈出了一大步。不是想象中的那么难吧!

2.中级改善

接下来我们的改善主要在结构和表现相分离上,这一步不象第一步那么容易实现,我们需要观念上的转变,以及对CSS2技术的学习和运用。但学习任何新知识都需要花点时间的,不是吗?诀窍在于边做边学。假如你一直采用表格布局,根本没用过 CSS,也不必急于跟表格布局说再见,你可以先用样式表代替 font 标签。随着你学到的越多,你能做的就越多。好,一起来看看我们需要做哪些事:

用CSS定义元素外观 

我们在写标识时已经养成习惯,当希望字体大点就用<h1>,希望在前面加个点符号就用<li>。我们总是想<h1>的意思是大的,<li>的意思是圆点,<b>的意思是“加粗文本”。而实际上, <h1>能变成你想要的任何样子,通过CSS,<h1>能变成小的字体,<p>文本能够变成巨大的、粗体的,<li>能够变成一张图片等等。我们不能强迫用结构元素实现表现效果,我们应该使用CSS来确定那些元素的外观。例如,我们可以使原来默认的6级标题可以看起来大小一样:

h1, h2, h3, h4, h5, h6{ font-family: 宋体, serif; font-size: 12px; } 

用结构化元素代替无意义的垃圾 

许多人可能从来都不知道HTML和XHTML元素设计本意是用来表达结构的。我们很多人已经习惯用元素来控制表现,而不是结构。例如,一段列表内容可能会使用下面这样的标识:

句子一<br /> 句子二<br /> 句子三<br /> 

如果我们采用一个无序列表代替会更好:

<ul> <li>句子一</li> <li>句子二</li> <li>句子三</li> </ul> 

你或许会说“但是<li>显示的是一个圆点,我不想用圆点”。事实上,CSS没有设定元素看起来是什么样子,你完全可以用CSS关掉圆点。

给每个表格和表单加上id 

给表格或表单赋予一个唯一的、结构的标记,例如

<table id="menu"> 

接下来,在书写样式表的时候,你就可以创建一个“menu”的选择器,并且关联一个CSS规则,用来告诉表格单元、文本标签和所有其他元素怎么去显示。这样,不需要对每个<td>标签附带一些多余的、占用带宽的表现层的高、宽、对齐和背景颜色等等属性。只需要一个附着的标记(标记“menu”的id标记),你就可以在一个分离的样式表内为干净的、紧凑的代码标记进行特别的表现层处理。

中级改善我们这里先列主要的三点,但其中包含的内容和知识点非常多,需要我们逐步学习和掌握,直到最后实现完全采用CSS而不才用任何表格实现布局。 

<!--EndFragment-->
分享到:
评论

相关推荐

    自动部署web、nosqlCoreWeb.zip

    随着web2.0的快速发展,传统数据库瓶颈显露水面,这时,非关系型数据库应运而生! 这个项目用于LANMP和NoSQL部署,使用shell script语言,当前版本是v2.0.0; 我们将继续关注并修改CoreWeb项目。 CoreWeb遵循GPL(v2...

    [转载]Selenium2.0之WebDriver学习总结(1).docx

    总的来说,Selenium2.0(即Selenium WebDriver)的出现,极大地提升了Web自动化测试的灵活性、稳定性和兼容性,成为了现代Web应用测试不可或缺的一部分。它通过直接与浏览器交互,克服了Selenium1.0的诸多限制,提供...

    Building Django Web Applications epub

    Building Django Web Applications 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书

    [转载]Selenium2.0之WebDriver学习总结(3).docx

    在本文中,我们将深入探讨Selenium 2.0中的WebDriver,这是一个强大的自动化测试工具,用于模拟用户与网页的交互。我们将通过一个实际的登录网易相册、创建相册、发表评论并删除相册的示例,来展示WebDriver的各种...

    SQL语言参考大全

    ajax 联盟: web 2.0,Ajax 技术资源中心,web标准教程及推广,网站重构,XHTML+CSS,CSS布局,DIV+CSS &lt;br&gt; 在web standard具体应用上作一些教程和推广。 &lt;br&gt;Ajax:是一种无刷新技术+异步交互,给用户的感觉是响应...

    2天驾驭div+css(全新发布2.0版本)

    《2天驾驭DIV+CSS》这本教程是一本面向Web前端开发新手的教材,旨在帮助学员通过两天的学习快速掌握DIV和CSS的基础知识和应用技巧。本书强调理论学习与实践相结合,鼓励学员在学习过程中亲自动手实践,以达到...

    Web3.0到来 没有“人”的雪球如何滚下去?.docx

    Web3.0的目标是通过数据挖掘、智能匹配和语义搜索技术,解决Web2.0时代的“信息过载”问题,实现完全个性化的用户体验。 【雪球与Web3.0】 雪球是一款社交投资网络平台,它将社区交流、产品数据查询和交易功能整合...

    Fesend CMS系统源码(.NET 2.0版本!)

    Fesend CMS系统源码 【.Net 2.0版本!】 环境:Vs2005,SqlServer 2000 运用了流行的AJAX技术及.net技术,将.net的缓存技术发挥到淋漓尽至,从而极大的提高了程序运行的效率以及减轻了服务器的负担,性能及效率...

    dnn转载的

    DNN被广泛用于构建社区驱动的网站,因此“微软的2.0网站dnn转载的”可能是指使用DNN来搭建或管理的2.0版本的网站,这里的“2.0”可能指的是Web 2.0的概念,强调用户交互和社区参与。 在描述中提到的“开源社区”...

    Tomcat 7-9转载资源

    - **Java EE 8支持**:兼容Java EE 8,包括JSF 2.3、CDI 2.0、JPA 2.2等标准。 在Windows环境下,提供了x64和x86两种版本,分别对应64位和32位操作系统。对于64位系统,x64版本通常能更好地利用硬件资源,提高性能...

    cankaowenxian.rar_java 参考 文献

    4. `J2ME中文教程 8 MIDP 2 安全体系.mht`:这部分可能深入讲解了MIDP 2.0的安全特性,包括如何在受限环境中保护应用程序和用户数据。 5. `J2ME 记录管理存储.mht`:与上一个文件相似,继续探讨J2ME的RMS,可能是从...

    对SQL说不 NoSQL的数据库 技术革命 转载.doc

    随着互联网技术的发展,尤其是Web2.0和云计算的崛起,对于大规模、高并发、高性能的数据处理需求日益增长,传统的SQL数据库在面对这种挑战时显得力不从心。 在NoSQL运动中,开发者开始寻求更灵活、更适应大数据量...

    赣极方棋html5版源码 v2.0

    保留版权,可任意转载。赣极方棋大屏完整版更适合1024*768以上分辨率设备浏览。象棋模式,军旗模式,动物模式,自定义模式均可设置。体验象棋,军旗的另类玩法。点击 index.html 可在本地电脑等设备体验; 上传到...

    【转载】CAS实现单点登录(SSO)经典完整教程

    这通常通过配置Web应用的过滤器实现。 6. **自定义认证**: CAS支持多种认证方式,如用户名/密码、LDAP、数据库等。你可以根据实际需求自定义认证逻辑,实现与后端系统的集成。 7. **服务注册**: 在CAS服务器中...

    jsr168 portlet(struts2+spring2.5+hibernate3.3)(转载)

    Pluto是Apache Pluto Portlet Container的简称,它是对JSR168和JSR286(Portlet 2.0)标准的开源实现,用于部署和管理portlet。 综合这些技术,这个项目提供了一个完整的portlet开发实例,展示了如何在现代Java Web...

    css参考手册v4.2.4by飘零雾雨(web前端开发参考手册)最新版本

    本手册的部分内容参考了苏沈小雨版的CSS2.0手册及World Wide Web Consortium (W3C)公开的网络文档。 由于本手册为持续间断更新,时间越长版本越多。现网络上已流传着各种版本的手册,而新版本可能会改正老版本中的...

    夏茂政府网集成OA完整版 v2.0

    夏茂政府网集成OA完整开源access版2.0&gt;&gt; 本系统与1.0版一样,完整免费无限制 1.前台网站与OA办公完美集成,使用同一个access数据库,同一用户系统; 2.数据库开放,不再加密隐藏数据表; 3.前台管理分文章、图片...

    基于FreeBSD和Postfix的反垃圾邮件系统5.1(PowerUP补充版V2.0)

    本文介绍使用FreeBSD+Postfix+Cyrus-sasl+Courier-imap+Webmail+spamassassin+Clamav+mailscanner+maildrop来架构一个具有多域名,webmail、防病毒、防垃圾邮件、web管理界面的邮件系统。 Jacky, $Revision: 5.1...

    fhir-in-action:示例和教程

    flood health information anywhere on the web 2.0. 版权申明 本书的著作权归作者所有。你可以: * 下载、保存以及打印本书 * 网络链接、转载本书的部分或者全部内容,但是必须在明显处向读者提供访问本书发布网站...

Global site tag (gtag.js) - Google Analytics