`

Web开发基本知识一

阅读更多

该文章转自

http://blog.sina.com.cn/s/blog_92dd4e470100vhsi.html

 

 WEB标准


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

 

 结构标准语言
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的不足,以强大的扩展性满足网络信息发布的需要,后来逐渐用于网络数据的转换和描述。
 
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的过渡。
 
CSS
CSS是Cascading Style Sheets层叠样式表的缩写。目前推荐遵循的是W3C于1998年5月12日推荐CSS2(参考
http://www.w3.org/TR/CSS2/)。W3C创建CSS标准的目的是以CSS取代HTML表格式布局、帧和其他表现的语言。纯CSS布局与结构式XHTML相结合能帮助设计师分离外观与结构,使站点的访问及维护更加容易。
 
DOM
DOM是Document Object Model文档对象模型的缩写。根据W3C DOM规范(
http://www.w3.org/DOM/),DOM是一种与浏览器,平台,语言的接口,使得你可以访问页面其他的标准组件。简单理解,DOM解决了Netscaped的Javascript和Microsoft的Jscript之间的冲突,给予web设计师和开发者一个标准的方法,让他们来访问他们站点中的数据、脚本和表现层对像。
 
ECMAScript
ECMAScript是ECMA(European Computer Manufacturers Association)制定的标准脚本语言(JAVAScript)。目前推荐遵循的是ECMAScript 262

 

采用Web标准的好处


对于访问者:
1. 文件下载与页面显示速度更快。
2. 内容能被更多的用户所访问(包括失明、视弱、色盲等残障人士)。
3. 内容能被更广泛的设备所访问(包括屏幕阅读机、手持设备、搜索机器人、打印机、电冰箱等等)。
4. 用户能够通过样式选择定制自己的表现界面。
5. 所有页面都能提供适于打印的版本。
 
对于网站所有者:
1. 更少的代码和组件,容易维护。
2. 带宽要求降低(代码更简洁),成本降低。举个例子:当 ESPN.com 使用 CSS改版后,每天节约超过两兆字节(terabytes)的带宽。
3. 更容易被搜寻引擎搜索到。
4. 改版方便,不需要变动页面内容。
5. 提供打印版本而不需要复制内容。
6. 提高网站易用性。在美国,有严格的法律条款(Section 508)来约束政府网站必须达到一定的易用性,其他国家也有类似的要求。
 
实现内容和形式的分离,做到模块化开发,同时进行,减少开发时间成本
便于维护,低耦合的模块设计,单一模块的修改并不影响其他模块,减少维护成本
 
结构清晰,页面体积小,浏览器兼容性好
 
对用户友好,页面可用性、可访问性高,如在不同浏览器情况下都能正常访问页面,页面打开速度快,良好的交互性与用户体验,方便用户获取所需信息,减少用户时间成本
经过SEO优化后的站点被搜索引擎收录的机会更多,从而给站点带来更多的用户
 
提高用户价值,提高企业价值
 
初学web标准的几个误区


1. 不是为了通过校验才标准化
web标准的本意是实现内容(结构)和表现分离,就是将样式剥离出来放在单独的css文件中。这样做的好处是可以分别处理内容和表现,也方便搜索和内容的再利用。   W3C校验仅仅是帮助你检查XHTML代码的书写是否规范,css的属性是否都在CCS2的规范内。代码的标准化仅仅是第一步,不是说通过的校验,我的网页就标准化了。我们不是为了虚名,或者向别人炫耀:“看我的页面通过了校验”而去标准化,我们的目的是为了使自己的网页设计工作更有效率,为了缩小网页尺寸,为了能够在任何浏览器和网络设备中正常浏览。
请大家沉下心来,仔细研究和理解web标准的内涵。网络上已经充满了不必要的浮躁和虚荣,请不要将这种风气带到web标准应用中来,这样做只会影响和损害web标准的推广。
2. 不要用传统的表格思维来套div
“CSS布局就是将原来用table的地方用div来替代,原来是表格嵌套,现在是DIV嵌套。”这种观点是错误的!   
请跳出原来表格布局的禁锢,抛弃一个td接一个td放置图片和内容的思维方式。我们上面说过web标准的目的是分离内容和表现,你可以这样思考,页面里有的仅仅是内容,没有修饰的情况下,它看上去就是一张白白的页面,上有一些文字和图片(这个图片是指内容中的图片,是有真实意义的图片)。这些文字图片仅仅是依次罗列下来,只有结构,没有任何样式。然后加入表现,将所有修饰的图片作为背景,用C SS来定义每一块内容的位置、字体、颜色等。   
这样制作的页面才是内容与表现分离的,就是说,当你抽掉css文件,剩下的就是干净的内容。这样才能在文本浏览器中阅读,才能在手机、PDA中阅读,才能随时修改CSS实现改版。
3. 不必为每块内容都建立一个id
有网友抱怨css文件太大、太复杂。仔细看他们的代码,发现原因是他们对每块内容、甚至每句话都定义一个div,建立一个ID。这一方面是对样式表应用的不熟悉,另一方面也表现出对web标准没有彻底理解。   
我们知道内容都是有结构的(如果不明白,请阅读:[url=http://www.w3cn.org/article/tips/2004/43. html]理解表现和结构相分离 ),相同的结构的内容我们可以用同一个样式来定义,比如相同级别的标题、正文、图片。对于多次引用的样式可以用class来定义,不需要每个都用id;另外也不是说一定要用,你完全可以用别的来代替,同样都是块级元素,一样有盒模型的七个参数,仅仅方便浮动。   
至于仅仅为了行高、间距、一个修饰图片而增加额外的div,我想随着对CSS的应用和理解,你很快就可以省略掉这些。我们反对用DIV的嵌套取代table的嵌套,这没有任何意义,不能体现内容的结构化。希望大家多研究CSS,写出最简练,最有效的样式表。
4. 不要因为一点挫折就轻言放弃
我想这是一个态度和处事方法问题,这不仅仅针对学习web标准。学习任何新知识,接受新概念,都有困难,特别是需要你改变原来已有的习惯和思维时。唯一的问题就是:你认为学习web标准是否值得?你可以问问自己:你是否认可web标准带来的这些好处(简化代码、加速开发、压缩文件尺寸、提高下载速度、更好的易用性、获得更多用户、更易于维护、多平台兼容)?你是否觉得世界通用的XML离你还很远?你是否认为现在掌握的HTML知识就已经足够了?   
自从99年以后,网页制作技术在国内就没有怎么进步和变革过(除了flash的兴起),而在国外前进的脚步就一直没有停止过,xhtml1.0、xhtml1.1、xml、xsl...,W3C和各大软件公司都在不断的研究和推进web技术,使它更方便、更有效、更强大。web标准的应用和推广国外已经开展了八年多(以zeldman的web标准组织网站为起点),虽然困难重重,但正在逐步被人们接受和认可。为什么我们依然陶醉在网站表面的“繁华”上,不去思考页面背后本质的东西。

  • 大小: 37.6 KB
分享到:
评论

相关推荐

    pythonweb设计教程课后答案-PythonWeb开发基础教程教学大纲.pdf

    pythonweb设计教程课后答案_PythonWeb开发基础教程教学 ⼤纲 0 《 Python Web 开发基础教程》教学⼤纲 学 时: 66 代 码: 适⽤专业: 制 定: 审 核: 批 准: ⼀、课程的地位、性质和任务 Web 开发基础是普通⾼等...

    domino Web 开发资料

    domino Web 开发资料介绍了用domino作为web服务器来进行应用系统开发的基本知识

    Web开发敏捷之道-应用Rails进行敏捷Web开发(第3版).pdf

    《Web开发敏捷之道:应用Rails进行敏捷Web开发(第3版)》第1版曾荣获Jolt大奖“最佳技术图书”奖。在前两版的内容架构基础上,第3版增加了对Rails 2中新特性和最佳实践的内容介绍。相比第2版中的内容,Rails 2增加了...

    ASP.NET Web开发学习实录光盘

    韩啸、王瑞敬、刘健南编著的《ASP.NET Web开发学习实录(附光盘)》重点围绕Web开发,结合精选教学视频,全程推演ASENET 3.5应用开发的整个过程,引导读者深刻理解和掌握以ASP.NET从事Web应用开发所需要的基本知识和...

    python web开发学习实录

    Python 的安装和环境配置、Python的基本语法、流程控制、模块和函数、数据结构、字符串与正则表达式、面向对象编程、文件处理、程序异常和处理、数据库连接和持久化操作、Python网络功能、Python与HTML、XML 的应用...

    深入体验Java Web开发内幕

    【下载说明】  《深入体验Java Web开发内幕——核心基础》一书在网上评价极高,非常适合广大Java Web开发人员。本资料是该书PDF格式的高清晰电子版,可用Adobe Reader7.0或兼容阅读工具打开,推荐Java爱好者...

    PythonWeb开发项目教程Flask版教学大纲教案.doc

    一、课程的性质与目标 本课程是面向计算机相关专业的一门专业课,本书将详细介绍使用Flask框架开发We b应用的知识,包括路由、模板、表单、视图、数据库操作,并围绕着这些知识开发了一 个完整的Web应用。...

    PythonWeb开发基础教程教学大纲.doc

    在系统理解和掌握Web开发基本 原理的基础上,具有设计和开发Web项目的基本能力。 Web开发是一门实践性非常强的学科,它要求学生在理解和掌握程序设计和Web开发相 关知识的基础上,充分利用实验课程,在计算机上动手...

    《精通visual C# 2005-语言基础、数据库系统开发、web开发》光盘

    第一部分介绍了使用C#语言进行面向对象系统开发的基本知识:第二部分详细介绍了.NET类库中的部分常用空间,熟练掌握这些基本对象是利用C#开发程序的基础;第三部分具体介绍了利用C#开发ASP.NET Web系统的技术;最后...

    Java Web整合开发王者归来pdf part16.rar

    1.2 Web开发背景知识 3 1.2.1 Web访问基本原理 3 1.2.2 HTTP超文本传输协议 4 1.2.3 Web浏览器 5 1.2.4 Web服务器 5 1.3 Web开发技术发展历史 6 1.3.1 传统的Web服务器模式开发 6 1.3.2 动态展现页面技术 6 1.3.3 ...

    Web前端开发职业技能等级标准.pdf

    Web前端开发,充分考虑到了Web前端开发从业人员的职业发展路径与成长路径,以职业素养、职业技能、知识水平为主要框架结构,设计了HTML基础及HTML5标签、CSS及CSS3应用、JavaScript基本语法与高级编程、ES6标准、...

    Web3.0知识体系分享

    二、Web3.0知识体系分享目的: 1.全面提高大家对新风口Web3的认知, 2.打破固有传统业务模式需求的思维定式 3.对Web3产生共鸣共识,互相能在一个维度沟通 4.理解Web3领域的术语、需求、龙头项目、文章、研究报告 5....

    PythonWeb开发基础教程(Django版)(微课版)-教学大纲.doc

    在系统理解和掌握Web开发基本 原理的基础上,具有设计和开发Web项目的基本能力。 Web开发是一门实践性非常强的学科,它要求学生在理解和掌握程序设计和Web开发相 关知识的基础上,充分利用实验课程,在计算机上动手...

    python web开发学习实录.part2

    Python 的安装和环境配置、Python的基本语法、流程控制、模块和函数、数据结构、字符串与正则表达式、面向对象编程、文件处理、程序异常和处理、数据库连接和持久化操作、Python网络功能、Python与HTML、XML 的应用...

    JAVA初级教程——Web系统开发技术与方法

    JAVA初级教程——Web系统开发技术与方法: Web编程基本知识 Web系统开发环境准备 Web系统开发的方法 Java Servlet JDBC JSP XML处理

    精通VISUAL C# 2008:语言基础、数据库系统开发、WEB开发.part1.rar

    精通VISUAL C# 2008:语言基础、数据库系统开发、WEB开发.part1.rar 共5个压缩包,需要全部下载才能解压. 《精通Visual C# 2008——语言基础、数据库系统开发、Web开发(1CD)》由浅入深、循序渐进地讲解了微软公司的...

    Java Web整合开发王者归来pdf part15.rar

    1.2 Web开发背景知识 3 1.2.1 Web访问基本原理 3 1.2.2 HTTP超文本传输协议 4 1.2.3 Web浏览器 5 1.2.4 Web服务器 5 1.3 Web开发技术发展历史 6 1.3.1 传统的Web服务器模式开发 6 1.3.2 动态展现页面技术 6 1.3.3 ...

    魔乐先生 JAVA-WEB开发实战笔记pdf格式

    突出了JAVAWEB基础语法的讲解,从JSP的基础知识和基本语法入手,循序渐进、深入浅出地介绍了JSP的各种技术, 并配以大量的实例,和精选的代码,细致讲解JAVA-WEB动态网页编程的方法与技巧。是广大IT学子踏入WEB开发...

    Java EE Web开发实例精解完整光盘

    Java EE Web开发实例精解完整光盘 郝玉龙,尹建平 著 清华大学出版社,北京交通大学出版社 2008-03-01 《Java EE Web开发实例精解》采用工程实例的形式对JAVA EE Web编程技术进深入系统的讲解。JAVA EE Web应用系统...

    web客户端开发与应用课件

    web客户端开发与应用课件,包含以下知识点: 1、html基本标签 3、html基本标签(二)和表单 4、表单基本验证技术 5、函数与Windows对象 6、BOM编程 7、DOM高级编程 8、表格的使用 9、javascript的基本语法 10、...

Global site tag (gtag.js) - Google Analytics