XHTML

可扩展 超文本标记语言,是一种置标语言,表现方式与 超文本标记语言HTML)相似,不过 语法上更加严格。
从继承关系上讲, HTML是一种基于 标准通用置标语言的应用,是一种很是 灵活的置标语言,而XHTML则基于 可扩展标记语言可扩展标记语言标准通用置标语言的一个子集。XHTML 1.0在2000年1月26日成为W3C的推荐标准。

1造成背景

可扩展 超文本标记语言。HTML是一种基本的WEB 网页设计语言,XHTML是一个基于 可扩展标记语言标记语言,看起来与HTML有些相象,只有一些小的但重要的区别,XHTML就是一个扮演着相似HTML的角色的 可扩展标记语言(XML),因此,本质上说,XHTML是一个过渡技术,结合了部分XML的强大功能及大多数HTML的简单特性。
2000年末,国际 W3C组织万维网联盟)组织公布发行了XHTML 1.0版本。XHTML 1.0是一种在HTML 4.0基础上优化和改进的的新语言,目的是基于 XML应用。XHTML是一种加强了的HTML,XHTML 是更严谨更纯净的 HTML 版本。它的可扩展性和灵活性将适应将来网络应用更多的需求。XML虽然 数据转换能 力强大,彻底能够替代HTML,但面对成千上万已有的基于HTML语言设计的网站,直接采用XML还为时过早。所以,在HTML4.0的基础上,用XML 的规则对其进行扩展,获得了XHTML。因此,创建XHTML的目的就是实现HTML向XML的过渡。国际上在网站设计中推崇的 WEB标准就是基于XHTML的应用(即一般所说的 CSS+DIV)。

概述

XHTML是当前HTML版的继承者。HTML 语法要求比较松散,这样对 网页编写者来讲,比较方便,但对于机器来讲,语言的 语法越松散,处理起来就越困难,对于传统的计算机来讲,还有能力兼容松散语法,但对于许多其余设备, 好比手机,难度就比较大。所以产生了由 DTD定义规则, 语法要求更加严格的XHTML。
大部分常见的 浏览器均可以正确地解析XHTML,即便老一点的浏览器,XHTML做为HTML的一个子集,许多也能够解析。也就是说,几乎全部的 网页浏览器在正确解析HTML的同时,可兼容XHTML。固然,从 HTML彻底转移到XHTML,还须要一个过程。
跟层叠式样式表(外语缩写: CSS)结合后,XHTML能发挥真正的威力;这使实现样式跟内容的分离的同时,又能有机地组合 网页代码,在另外的单独文件中,还能够混合各类XML应用, 好比 MathMLSVG
HTML到XHTML过渡的变化比较小,主要是为了适应 XML。最大的变化在于文档必须是良构的,全部 标签必须闭合,也就是说开始 标签要有相应的结束 标签。另外,XHTML中全部的 标签必须小写。而按照HTML 2.0以来的传统,不少人都是将 标签大写,这点二者的差别显著。在XHTML中,全部的 参数值,包括 数字,必须用双引号括起来(而在 SGML和HTML中,引号不是必须的,当内容只是数字、字母及其它容许的特殊字符时,能够不用引号)。全部元素,包括空元素, 好比img、br等,也都必须闭合,实现的方式是在开始 标签末尾加入斜扛, 好比<code><nowiki><img … /></nowiki></code> 、<code><nowiki>
</nowiki></code>。省略参数,比 如<code><nowiki><option selected></nowiki></code>,也不容许,必须 用<code><nowiki><option selected="selected"/></nowiki></code>。二者的详细差异,可经过W3C XHTML说明]来查阅。

定义

XHTML 指扩展 超文本 标签语言(EXtensible HyperText Markup Language)。
XHTML 的目标是取代 HTML。
XHTML 与 HTML 4.01 几乎是相同的。
XHTML 是更严格更纯净的 HTML 版本。
XHTML 是做为一种 XML 应用被从新定义的 HTML。

W3C 标准

* XHTML是EXtensible HyperText Markup Language的英文缩写,便可扩展的 超文本标记语言.
* XHTML语言是一种 标记语言,它不须要 编译,能够直接由 浏览器执行.
* XHTML是用来代替HTML的, 是2000年 w3c公布发行的.
* XHTML是一种加强了的HTML,它的可扩展性和灵活性将适应将来网络应用更多的需求.
* XHTML是基于XML的应用.
* XHTML更简洁更严谨.
* XHTML也能够说就是HTML一个升级版本.( w3c描述它为'HTML 4.01')
* 除此以外XHTML和HTML基本相同.
* XHTML是大小写敏感的,XHTML与x html是不同的.标准的XHTML 标签应该使用小写.

2有效文件

一个符合XHTML标准的文件便可称为有效. 此能够确保XHTML文件代码的协调, 亦能令文件的更容易被处理, 而不需确保各类浏览器 编译的一致性。而W3C验证服务则能够验证文件是否有效。而实际上, 不少网站开发工具(例如Dreamweaver)都支援以W3C标准验证文件。

语法

XHTML语言必须符合XML的格式, [1] 例如
Attribute names must be in lower case
属性名称必须为小写
This is wrong:
这是错误的:
<table WIDTH="100%">
This is correct:
这是正确的:
<table width="100%">
Attribute values must be quoted
属性值使用双引号
This is wrong:
这是错误的:
<table width=100%>
This is correct:
这是正确的:
<table width="100%">
Attribute minimization is forbidden
属性简写是不容许的
This is wrong:
这是错误的:
<input checked> <input readonly> <input disabled> <option selected> <frame noresize>
This is correct:
正确的是这样:
<input checked="checked" /> <input readonly="readonly" /> <input disabled="disabled" /> <option selected="selected" /> <frame noresize="noresize" />
The id attribute replaces the name attribute
用id属性来替代name属性
This is wrong:
这是错误的:
<img src="picture.gif" name="picture1" />
This is correct:
这是正确的:
<img src="picture.gif" id="picture1" />
注意:为了版本比较低的浏览器,你应该同时使用name和id属性,并使它们两个的值相同的,像这样:
<img src="picture.gif" id="picture1" name="picture1" />
这是在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"
这些作法的目的,是使一个XHTML 网页可以被 网页浏览器正确及较快地 编译

与HTML对比

1.全部的标记都必需要有一个相应的结束标记
之前在HTML中,你能够打开许多 标签,例如和<li>而不必定写对应的和</li>来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,全部 标签必须关闭。若是是单独不成对的 标签,在标签最后加一个"/"来关闭它。例如:
<img height="80" alt="网页设计师" src="../images/logo_ w3cn_200x80.gif" width="200" />
2.全部 标签的元素和属性的名字都必须使用小写
与HTML不同,XHTML对大小写是敏感的,<title>和<TITLE>是不一样的 标签。XHTML要求全部的 标签和属性的名字都必须使用小写。例如:<BODY>必须写成<body> 。大小写夹杂也是不被承认的,一般dreamweaver自动生成的属性名字"onMouseOver"也必须修改为"onmouseover"。
3.全部的XML标记都必须合理 嵌套
一样由于XHTML要求有严谨的结构,所以全部的嵌套都必须按顺序,之前咱们这样写的代码:
<p><b></p></b>
必须修改成:<p><b></b></p>
就是说,一层一层的嵌套必须是严格对称。
4.全部的属性必须用引号""括起来
在HTML中,你能够不须要给属性值加引号,可是在XHTML中,它们必须被加引号。例如:
<height=80>
必须修改成:
<height="80">
特殊状况,你须要在属性值里使用双引号,你能够用",单引号可使用&apos;,例如:
<alt="say&apos;hello&apos;">
5.把全部<和&特殊符号用编码表示
任何小于号(<),不是 标签的一部分,都必须被编码为& l t ;
任何大于号(>),不是 标签的一部分,都必须被编码为& g t ;
任何与号(&),不是实体的一部分的,都必须被编码为& a m p;
注:以上字符之间无空格。
6.给全部 属性赋一个值
XHTML规定全部属性都必须有一个值,没有值的就重复自己。例如:
<input type="checkbox" name="shirt" value="medium" checked>
必须修改成:
<input type="checkbox" name="shirt" value="medium" checked="checked">
7.不要在注释内容中使“--”
“--”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们再也不有效。例以下面的代码是无效的:
<!--这里是注释-----------这里是注释-->
用等号或者空格替换内部的虚线。
<!--这里是注释============这里是注释-->
以上这些规范有的看上去比较奇怪,但这一切都是为了使咱们的代码有一个统1、惟一的标准,便于之后的数据再利用。
8.图片必须有说明文字
每一个图片 标签都必须有ALT说明文字。
<img src="ball.jpg" alt="large red ball" title="large red ball"/> //为了兼容 火狐和IE浏览器,对于图片 标签,尽可能采用 alt和title双标签,单纯的alt标签在火狐下没有图片说明!

3现行规范

1. XHTML 1.0 Transitional - 过渡型,标识 语法要求较宽松
< !DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.<CITE class=highlight highlight="true"> </CITE>/TR/xhtml1/DTD/xhtml1-transitional.dtd">
要求很是宽松的DTD,它容许你继续使用HTML4.01的标识(可是要符合x html的写法)。
2. XHTML 1.0 Strict - 严格型,标识要求达到以上XHTML相比于HTML的全部改动
<!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www./TR/xhtml1/DTD/xhtml1-strict.dtd">
要求严格的 DTD,你不能使用任何表现层的标识和属性,例如
3. XHTML 1.0 Frameset - 框架集定义
<!DOCTYPE htmlPUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.<CITE class=highlight highlight="true"></CITE>/TR/xhtml1/DTD/xhtml1-frameset.dtd">
专门针对 框架页面设计使用的DTD,若是你的页面中包含有框架,须要采用这种DTD
4. XHTML 1.1 - 模块化的XHTML
5. XHTML 2.0 - 彻底模块化可定制化的XHTML,正在开发中,参考http://<CITE class="highlight" highlight="true"></CITE>/

4W3C释义

W3C是英文 World Wide Web Consortium 的缩写,中文意思是W3C理事会或 万维网联盟。W3C于1994年10月在 麻省理工学院计算机科学实验室成立。建立者是万维网的发明者 Tim Berners-Lee。   W3C组织是对网络标准制定的一个非赢利组织,像HTML、XHTML、CSS、XML的标准就是由W3C来定制。W3C会员(大约500名会员)包括生产技术产品及服务的厂商、内容供应商、团体用户、研究实验室、标准制定机构和政府部门,一块儿 协同工做,致力在万维网发展方向上达成共识。

5总结

XHTML是“3种HTML 4文件根据XML 1.0标准重组”而成的。 而 W3C亦继续维持建议使用 HTML4.01和积极地研究 HTML5及XHTML的计划。 于 2002年 8月发表的XHTML 1.0 的建议中, W3C指出XHTML家族将会是 Internet的新阶段。而转换使用XHTML能够令开发人员接触 XML和其好处,并能够确保以XHTML开发的 网页于将来的相容性。
HTML
XHTML HTML 5 CSS TCP/IP
XML
XML XSL XSLT XSL-FO XPath XPointer XLink DTD XML Schema DOM XForms SOAP WSDL RDF RSS WAP Web Services
Web脚本
JavaScript HTML DOM DHTML VBScript AJAX jQuery JSON E4X WMLScript
Serv脚本
SQL ASP ADO PHP
.NET
多媒体
SMIL SVG

网页技术与标准

文档呈现语言
HTML XHTML XML XForms
DHTML      
 
样式格式描述语言
层叠样式表 XSL    
 
动态网页技术
CGI FastCGI ASP ASP.NET
ColdFusion JSP PHP  
 
客户端交互技术
ActiveX Java Applet JavaFX AJAX
Silverlight ActionScript Flex AIR
 
客户端脚本语言
JavaScript JScript VBScript ECMAScript
 
标识定位语言
URL URI XPath URL重写
 
文档纲要语言
DTD XML Schema    
 
参考资料
相关文章
相关标签/搜索