W3C标准及规范

时间:2024-10-21 06:57:30

1.概念:W3C标准
中文名:万维网联盟,外文名:World Wide Web Consortium
万维网联盟标准不是某一个标准,而是一些列标准的集合。
网页主要有三部分组成:结构(Structure)、表现(Presentation)、行为(Behavior)。
对应的标准也有三方面:
结构化标准主要包括XHTML和XML,
表现标准语言主要包括CSS、
行为标准主要包括(如W3C DOM)、ECMAScript等。
这些标准大部分是W3C起草发布,也有一是其他标准组织制定的标准,比如ECMAScript(European Computer Manufacturers Association)的ECMAScript的标准。

2.如果不按照标准,会怎么样
统一规范的标准对于提高开发效率,尤其是团队开发,至关重要,如果一起开发的队友,不遵守标准,我用小写标签,你用大写;元素随意不闭合,属性不用双引号引起来,DocType随便放,那么我们可能会有一些无谓的错误或逻辑问题,为了排查这些问题浪费一定时间,而且这些时间都是一开始可以避免的,好吧,只能加班把时间补回来了。不同标准的页面,给用户的感觉就是你的产品不专业,印象分也会打折扣。就像那个淘气的IE,老是不听标准,大家都用addEventListener你用attachEvent,受到无数开发者的BS。好吧,我知道IE比w3c标准出现得更加早,而且IE9起已经开始改邪归正了,IE11的出现尤其是令人惊讶,拭目以待吧。

3.按照标准,又会怎么样
君不见,HTML5,一份标准,横空出世后,掀起WEB界轩然大波,浏览器成为万能药。很多UI库,甚至silverlight和Flash都痿了。MS又如何,adobe又如何,还是w3c NB一点。各大业界网站都以此动态为亮点新闻放在头条,很多招聘信息都喜欢加上一句会HTML5优先。标准,影响力很大。一级企业做标准,二级企业做品牌,三级企业拼销售。要想提高水平,标准很关键。具体到web开发了,自然而然是w3c标准了。

4.怎么实施w3c标准
首先要求团队里面的成员都熟悉,,一些很基础常见的就不能再违反了。其次要经常关注,因为标准并不是固定不变的,例如现在HTML5的script元素就不加type了,新标准有新写法。再次就是结合自身团队,制定适用的以w3c标准为基础的开发标准,毕竟要经常用的东西才能记忆深刻,否则我们的程序也不用写注释了。

5.会有什么细节问题,怎么处理
新来的成员不守规矩?新人培训还是十分重要的,正规的公司都应该要有这些规范。 以前做完的产品不遵守现在的标准?结合产品运营的周期,在下一个标准中逐步完善。 我做的东西符合标准了吗?戳一下这里看看啰。
6.W3C包含哪些内容:
(1)DOCTYPE是document type(文档类型)的简写,用来说明你用的XHTML或者HTML是什么版本。其中的DTD(例如)叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。
XHTML 1.0 提供了三种DTD声明可供选择:
i) 过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法)。
完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:///TR/xhtml1/DTD/">

ii) 严格的(Strict):要求严格的DTD,你不能使用任何表现层的标识和属性,例如

完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http:///TR/xhtml1/DTD/">

iii) 框架的(Frameset):专门针对框架页面设计使用的DTD,如果你的页面中包含有框架,需要采用这种DTD。
完整代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http:///TR/xhtml1/DTD/">

注:DOCTYPE声明必须放在每一个XHTML文档最顶部,在所有代码和标识之上。
(2)名字空间 namespace

通常我们HTML4.0的代码只是,这里的"xmlns"是什么呢?

这个“xmlns”是XHTML namespace的缩写,叫做“名字空间”声明。XHTML是HTML向XML过渡的标识语言,它需要符合XML文档规则,因此也需要定义名字空间。又因为XHTML1.0不能自定义标识,所以它的名字空间都相同,就是"http:///1999/xhtml"。目前阶段我们只要照抄代码就可以了。
(3)需要定义语言编码

<meta http-equiv=“Content-Type” content=“text/html; charset=gb2312” />

注:如果忘记了定义语言编码,可能会出现页面乱码现象。
(4)JavaScript定义

Js必须要用<script language="javascript" type="text/javascript">来开头定义,以保证在不支持js的浏览器上直接显示出来。
(5)CSS定义

CSS必须要用<style type=“text/css”>开头来定义,为保证各浏览器的兼容性,在写CSS时请都写上数量单位。
例如:错误:.space_10{padding-left:10} 正确:.space_10 {padding-left:10px}
(6)不要在注释内容中使用“–”
“–”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有效。
例如下面的代码是无效的:<!–这里是注释-----------这里是注释–>
正确的应用等号或者空格替换内部的虚线。
(7)所有标签的元素和属性的名字都必须使用小写
与HTML不一样,XHTML对大小写是敏感的,

和<title>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。例如:必须写成。大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"。