前言:
  现在都讲究标准建站,而标准建站使用的技术主要是XHTML+CSS,而现在我们普遍使用的是HTML代码,那么我该如何转换呢?以及HTML和XHTML有什么不同呢?在这个教程里,你将学到HTML和XHTML之间的不同,以及如何将HTML转换为XHTML。毕竟XHTML是发展的方向,所以我觉得该教程有必要在本站上发布。我感觉要是你想使用标准还是最好先学HTML,因为比较简单,然后再来看该教程。同时这也是我曾发表过的WEB标准 XHTML&CSS的延续。

  XHTML介绍:
  XHTML是 EXtensible HyperText Markup Language(可扩展超文本标记语言) 的英文缩写,而HTML则是 HyperText Markup Language(超文本标记语言) ,这是名字的不同。其实我们说得标准应该是XML,那为什么要学习XHTML呢?因为现在的HTML代码烦琐,危机四伏,但是XML使用环境还不成熟,所以推出了一个过度的产品就是XHTML,它起着呈上起下的作用。也有人认为XHTML是HTML的一个升级版本,其实也是正确的,我的理解是XHTML把HTML做得更加规范的一个标记语言,使HTML变得功能强大,减少了代码的烦琐尤其是表格。
  XHTML是在2000年1月26日被国际标准组织机构W3C(World Wide web Consortium)定为一个标准的,认为是HTML的一个最新版本,并且将逐渐替换HTML。现在所有的浏览器都支持XHTML,XHTML兼容 HTML 4.0。也有人认为XHTML就是HTML4.01。如果你在学习过程中自己编写了一个符合标准的站,你可以通过W3C的验证,验证通过后你将会得到一个标志,通常是XHTML1.0认证和CSS验证。我也不清楚目前国内有多少个网站同时通过了这两个验证。大家可以去http://www.w3.org/这个站点去验证你的站,如果符合那两个规则则会分别给我们两段代码加到你的网页上向别人展示说明你采用了标准建站啊,牛啊!

  为什么我们使用XHTML
  XHTML是HTML升级为XML的过度产品,被定为一个标准,XHTML完全兼容HTML4.01,并且具有XML的语法。下面我们来看一个含有错误代码的HTML,如下:
结束的元素里面,其他的元素可以有子元素,并且子元素也要被正确的嵌套在他们的父元素内。如:

  标签名字一定要用小写字母。
  因为 XHTML文档是XML应用程序, XML 对大小写是敏感的。象

是两个不同的标记。如错误代码:
  
  正确格式为:
  
  所有的 XHTML 元素一定要关闭
  不能有没有关闭的空的元素存在我们的代码中,其实对于这点我们是比较好结束的,有开始就应该有结束吗?例如错误代码:
  

This is a paragraph
  

This is another paragraph
  正确的为:
  

This is a paragraph


  

This is another paragraph


  独立的一个标签我们也要结束用 />来结束。
  例如:错误代码
  This is a break

  Here comes a horizontal rule:

  Here's an image 何为XHTML??_经验交流-LMLPHP
  正确代码:
  This is a break

  Here comes a horizontal rule:

  Here's an image 何为XHTML??_经验交流-LMLPHP
  通过上面的几个例子我们基本上看出了HTML和XHTML之间的不同,那么我们应该从现在起应该试着改变我们现在的HTML,例如都使用小写的标记、在标记之后加上结束标记的符号 />。

  XHTML 的语法
  简单的说写 XHTML 要用干净的 HTML 语法。
  XHTML的一些其他语法要求:
  属性名字必须小写。如:
  错误代码:
  
  正确的代码:
  

  属性值必须要被引用。如:
  错误的代码:
  

  正确的代码:
  

  属性的缩写被禁止。如:
  错误的代码:
  

  
  
  
  
  
  正确的代码:
  

  
  
  
  
  
  列出一个表让大家知道:
  HTML          XHTML
  compact       compact="compact"
  checked       checked="checked"
  declare       declare="declare"
  readonly       readonly="readonly"
  disabled       disabled="disabled"
  selected      selected="selected"
  defer        defer="defer"
  ismap        ismap="ismap"
  nohref       nohref="nohref"
  noshade       noshade="noshade"
  nowrap       nowrap="nowrap"
  multiple      multiple="multiple"
  noresize      noresize="noresize"

  用id属性代替name属性。如:
  HTML 4.01 中为a,applet, frame, iframe, img 和 map定义了一个name属性.在 XHTML 里name属性是不能被使用的,应该用id 来替换它。如:
  错误代码:
  何为XHTML??_经验交流-LMLPHP
正确的代码:
  何为XHTML??_经验交流-LMLPHP
  注意:我们为了使旧浏览器也能正常的执行该内容我们也可以在标签中同时使用id和name属性。如:
  何为XHTML??_经验交流-LMLPHP
  为了适应新的浏览器浏览我们在上述代码中的最后我加了/来结束标签。

XHTML DTD定义文档的类型。  
在XHTML中我们必须声明文档的类型,以便于浏览器知道你的文档是什么类型的,而且声明部分要加在文档的head之前。如:
  
  
  注:DOCTYPE声明不是 XHTML 文档的一部分,它也不是文档的一个元素,所以我们没必要加上结束标签。
  注:XHTML属性都是在
  DOCTYPE是document type(文档类型)的简写,用来说明你用的XHTML或者HTML是什么版本。
  其中的DTD(例如xhtml1-transitional.dtd)叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。
  要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。

  XHTML 1.0 提供了三种DTD声明可供选择:

  过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法)。完整代码如下:
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  严格的(Strict):要求严格的DTD,你不能使用任何表现层的标识和属性,完整代码如下:
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  框架的(Frameset):专门针对框架页面设计使用的DTD,如果你的页面中包含有框架,需要采用这种DTD。完整代码如下:
http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

  如何转换现有的结构为XHTML  
我们选择什么样的DOCTYPE?理想情况当然是严格的DTD,但对于我们大多数刚接触web标准的设计师来说,过渡的DTD(XHTML 1.0 Transitional)是目前理想选择(包括本站,使用的也是过渡型DTD)。因为这种DTD还允许我们使用表现层的标识、元素和属性,也比较容易通过W3C的代码校验。
  我们从现在的HTML转换为XHTML注意以下几点:
 一、在每个页面的首部都加上文档类型的说明。如:
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">当然可以选择其他类型的。
  二、标记和name 要都用小写。  
三、所有的属性值都要用引号引起来。
  四、单独的标签,如:
,
and ,都要在后面加/来结束。
在这里不建议使用诸如:和形式的方式,直接在其后面加/就可以了,如

  五、通过W3C 验证。进入W3C DTD 的官方网站:http://validator.w3.org/check/referer,验证时会显示错误。也可以用官方网站提供的工具tidy来实现转换:http://www.w3.org/People/Raggett/tidy/

  XHTML的模块化
为什么要模块化设计XHTML呢?XHTML虽然简单,但是它的内容很多,包括了一个网络设计师需要的绝大多数功能。XHTML一方面内容繁多复杂,但是从另一个角度来看它却是非常简单的。为了将XHTML分割成小的模块,W3C已经建立起了小型的已经定义好了的一系列XHTML元素,他们独立的能被与其他XML标准合并成的大型的更复杂的程序的简单设备所使用。

  通过XHTML模型,程序设计师能够做如下的事情:

  1.选择那些能够被使用XHTML构建块标准的设备所支持的元素。
  2.在遵循XHTML标准的同时使用XML可以对XHTML扩展。
  3.简单化的XHTML可以应用于像掌上电脑、移动电话、电视和家用电器等设备。
  4.通过加入心的XML功能(像声音、多媒体的)将XHTML延续到复杂程序的设计上。
  5.像XHTML基本(XHTML对于移动设备的一个子集)那样来定义XHTML的轮廓。


*表示不赞成应用到XHTML中
09-13 02:10