第二篇:结构与XHTML 【2011-05-21】
{ 对于网页开发来讲,理解web标准首先要理解结构与表现分离的含义。
v 网页的结构化就是将没有格式的内容用HTML或者XHTML标签分割成不同的部分,使内容更加具有逻辑性、易用性,同时使内容可以由CSS来控制外观表现。
v 网页的内容就是访问者真正想要了解的信息。这里所谓的”真正”是指纯粹的数据和信息本身,而不包含辅助信息(如装饰性图片,修饰文字显示格式的属性如大小、颜色等)。
v 网页是由超文本标记语言(HTML HyperText Markup Language)构成的。”超文本”就是指页面内可以包含图片、链接、音乐、程序等非文字的元素;”标记”就是说它不是程序语言,只是由文字及标记组合而成。
v HTML缺点之一是:手机、PDA、信息家电都不能直接显示HTML。
DTD
v DOCTYPE 是 document type(文档类型)的简写。用来说明本文件用的XHTML或者HTML是什么版本。 DTD是一个XML文档,解释了哪些标签、属性或值对于HTML的一个特定类型是有效的。 在XHTML中必须声明文档的类型,以便于浏览器知道正在浏览的文档是什么类型的。并且声明要位于HTML文件的第一行。如:
{ DOCTYPE 声明不是xhtml文档的一部分,也不是文档的一个了元素,所以没有必要加上结束标签。
v 其中DTD(如 xhtml1-transitional.dtd)叫做文档类型定义,里面包含了文档的规则,浏览器根据定义的DTD来解释页面的标签,并展现出来。xhtml1.0提供了3种DTD声明可供选择。
° 过渡的(Transitional)要求非常宽松的DTD,它充许继续使用HTML4.01的标识。 完整代码:
° 严格的(Strict )要求严格的DTD,不能使用任何表现层的标识和属性,完整代码:
° 框架的(Frameset)专门针对框架页面设计使用的DTD,如果页面中包含有框架,需要采用这种DTD。 完整代码:
{ 设定一个名字空间(Namespace)
v 通俗地讲,名字空间就是给文档做一个标记,告诉别人这个文档是属于谁的。名字空间声明充许通过一个URL来识别名字空间,只要直接在DOCTYPE声明后面添加如下代码即可:
v 其中XMLns就是XHTML namespace 的缩写。 http://www.w3.org/1999/xhtml并不是指一个具体的文件,仅仅是给它一个名字而已。
v XHTML 是HTML 向XML的过渡,因此它需要符合XML文档规则,因此也需要定义名字空间,又因为XHTML1.0不能自定义标签,所以它的名字空间都相同,就是”http://www.w3.org/1999/xhtml”> 然而 w3.org的校验器不会由于这个属性没有出现在要校验的XHTML文档中而报错,这是因为XMLns=http://www.w3.org/1999/xhtml 是一个固定值,即使文档里没有包含它,它也会自动加上。
v 为了被浏览器正确解释和通过标识校验,所有的XHTML文档都必须声明它们所使用的编码语言。如:
v 这里声明的编码语言是简体中文GB2312.
v 因为XHTML文档是XML的一种。而XML对大小写敏感,所在XHTML中标签名字一定要用小写字母。
v 在XHTML 中属性名也必须是小写,同时属性值必须带上英文双引号