`

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
分享到:
评论

相关推荐

    java web开发基础知识整理

    Java Web开发基础知识是构建Web应用程序的关键,它涵盖了多种技术,包括Java编程语言、HTML、JavaScript、Ajax以及XPath。以下是对这些技术的详细说明: 1. **Java**:Java是一种广泛使用的面向对象的编程语言,...

    python web开发.pdf

    本课程针对的是电子商务等专业的学生,旨在通过学习,让学生掌握Python Web开发的基本原理和常用工具,包括项目开发、环境管理、源码控制、持续集成和自动化部署等方面。 **核心知识点** 1. **Python基础**:...

    Web开发基础知识零基础自学资料

    【Web开发基础知识零基础自学资料】是一套全面的教程,旨在帮助初学者系统地学习和掌握Web开发的核心技能。这份资料涵盖了从环境搭建到实际应用的各个环节,是想要踏入Web开发领域的理想起点。 首先,我们要了解...

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

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

    用C++做WEB开发

    在现代的Web开发领域,性能往往是一个关键考量因素。如果你发现PHP在处理高并发或大数据量请求时表现得不够理想,那么转向C++进行Web开发可能是一个明智的选择。C++以其高效、低级特性和对内存管理的精细控制,能够...

    java web开发知识

    这一章通常会介绍Web开发的基本概念,包括HTTP协议、Web服务器的工作原理以及客户端与服务器之间的交互模型。同时,它可能会提及Web应用的生命周期,以及为什么选择Java作为Web开发语言的原因,比如平台独立性、强大...

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

    1. 掌握Web开发的基本原理和方法,特别是在Python环境中进行Web开发。 2. 学生应能系统理解Web开发,具备设计和开发Web项目的实际能力。 3. 通过合理的理论和实验课时安排,确保学生有机会运用所学知识在计算机上...

    PythonWeb开发基础教程教案PDF版进店另有word版或PPT版.pdf

    1. 第1章“Python Web开发起步”:介绍Web应用的基本架构,讲解Python Web框架,特别是Django的基础知识。教学重点在于配置Python Web开发环境和创建Django项目,难点可能在于理解环境配置和项目的初始化。 2. 第2...

    WEB前台技术1-WEB开发基本概念

    ### WEB开发基本概念详解 #### 一、网页与网站的基础认知 **网页(WEB Page)**,是存储WEB信息的基本文档单位,其扩展名通常为.htm或.html,使用HTML语言编写,承载包括文字、图片、动画、声音以及程序等多媒体...

    python web开发实录源代码

    1. **基础语法**:理解Python的基本数据类型(如字符串、列表、字典)、控制结构(如if语句、for循环)以及函数和模块的使用,这些都是进行Web开发的前提。 2. **Web框架**:Django和Flask是最常见的Python Web框架...

    Delphi+Web前端开发教程基于TMS+WEB+Core框架.pdf

    要开始使用TMS WEB Core,首先需要了解基本的Web开发知识,然后配置Delphi或Lazarus环境。教程中详细介绍了如何设置TMS WEB Core,包括项目设置和自动化版本管理,确保开发者能快速上手开发。 **重点技能和组件** ...

    1+X WEB前端开发初级教案.rar

    《1+X WEB前端开发初级教案》是一个针对初学者的教育资源,主要涵盖了Web前端开发的基础知识和技能。在Web前端开发领域,这是学习者踏入这个充满创新和技术挑战世界的入门教材。"1+X"通常指的是国家职业教育1+X证书...

    web开发之技术简介

    总之,"web开发之技术简介"是一个全面介绍Web开发基础的起点,涵盖了前端和后端开发的关键概念,以及学习和实践Web开发所需的基础知识。通过深入理解和掌握这些基础知识,开发者可以进一步探索更复杂的Web技术,构建...

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

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

    Tomcat与Java_Web开发技术详解3.pdf

    综上所述,《Tomcat与Java Web开发技术详解》这本书不仅全面覆盖了Tomcat的基本使用方法,还深入探讨了Java Web开发中的高级技术,对于希望深入了解Tomcat及其在Java Web开发中应用的读者来说,是一本非常有价值的...

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

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

    java web开发实例

    Java Web开发是一种使用Java技术构建基于Web的应用程序的过程,它涵盖了服务器端编程、数据库交互、用户界面设计等多个方面。本实例集合提供了丰富的课件和源代码,旨在帮助初学者逐步掌握Java Web开发的核心技能,...

    asp.net Web开发基础知识

    1. HTML、CSS和JavaScript基础:这些是Web开发的基本语言,HTML用于结构,CSS用于样式,JavaScript负责交互。理解和熟悉它们是开始ASP.NET开发的前提。 2. .NET Framework和C#:C#是ASP.NET的主要编程语言,而.NET ...

Global site tag (gtag.js) - Google Analytics