可扩展超文本标记语言:修订间差异

求闻百科,共笔求闻
添加的内容 删除的内容
(撤销繁简转换)
标签回退
(机器人:清理不当的来源、移除无用的模板参数)
 

(未显示2个用户的3个中间版本)

第15行: 第15行:
| extendedfrom = [[XML]], [[HTML]]
| extendedfrom = [[XML]], [[HTML]]
| extendedto =
| extendedto =
| standard = [http://www.w3.org/TR/xhtml1/ 1.0 (Recommendation)],<br />
| standard = [http://www.w3.org/TR/xhtml1/ 1.0 (Recommendation)],<br>
[http://www.w3.org/TR/2001/REC-xhtml11-20010531/ 1.1 (Recommendation)],<br />
[http://www.w3.org/TR/2001/REC-xhtml11-20010531/ 1.1 (Recommendation)],<br>
[http://www.w3.org/TR/xhtml11/ 1.1 SE (Working Draft)],<br />
[http://www.w3.org/TR/xhtml11/ 1.1 SE (Working Draft)],<br>
[http://www.w3.org/TR/html5/ 5 (Working Draft)],<br />
[http://www.w3.org/TR/html5/ 5 (Working Draft)],<br>
[http://www.w3.org/TR/xhtml2/ 2.0 (Working Draft)]
[http://www.w3.org/TR/xhtml2/ 2.0 (Working Draft)]
}}
}}
第28行: 第28行:
== 概述 ==
== 概述 ==


'''XHTML'''是「3種HTML 4文件根據XML 1.0標準重組」而成的<ref name="W3cWhatIsXhtml">http://www.w3.org/TR/xhtml1/#xhtml 'What is XHTML?' section in ''XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition)'' A Reformulation of HTML 4 in XML 1.0 ''W3C Recommendation 26 January 2000, revised 1 August 2002''</ref>。而[[W3C]]亦繼續建議使用[[HTML]] 4.01和積極地研究[[HTML5]]及XHTML的計劃。於2002年8月發表的XHTML 1.0的建議中,[[W3C]]指出'''XHTML'''家族將會是[[Internet]]的新階段。而轉換使用'''XHTML'''可以令開發人員接觸[[XML]]和其好處,並可以確保以'''XHTML'''開發的網頁於未來的相容性。
'''XHTML'''是「3種HTML 4文件根據XML 1.0標準重組」而成的<ref name="W3cWhatIsXhtml">http://www.w3.org/TR/xhtml1/#xhtml 'What is XHTML?' section in ''XHTML™ 1.0 The Extensible HyperText Markup Language (Second Edition)'' A Reformulation of HTML 4 in XML 1.0 ''W3C Recommendation 26 January 2000, revised 1 August 2002''</ref>。而[[W3C]]亦繼續建議使用[[HTML]] 4.01和積極地研究[[HTML5]]及XHTML的計劃。於2002年8月發表的XHTML 1.0的建議中,[[W3C]]指出'''XHTML'''家族將會是[[Internet]]的新階段。而轉換使用'''XHTML'''可以令开发人員接觸[[XML]]和其好處,並可以確保以'''XHTML'''开发的網頁於未來的相容性。


HTML语法要求比较松散,这样对网页编写者来说,比较方便,但对于机器来说,语言的[[语法]]越松散,处理起来就越困难,对于传统的電腦来说,还有能力兼容松散语法,但对于许多其他设备,比如手机,难度就比较大。因此产生了由[[文档类型定义|DTD]]定义规则,语法要求更加严格的XHTML。
HTML语法要求比较松散,这样对网页编写者来说,比较方便,但对于机器来说,语言的[[语法]]越松散,处理起来就越困难,对于传统的電腦来说,还有能力兼容松散语法,但对于许多其他设备,比如手机,难度就比较大。因此产生了由[[文档类型定义|DTD]]定义规则,语法要求更加严格的XHTML。
第36行: 第36行:
跟[[CSS]](Cascading Style Sheets,层叠式样式表)结合后,XHTML能发挥真正的威力;这使实现样式跟内容的分离的同时,又能有机地组合网页代码,在另外的单独文件中,还可以混合各种XML应用,比如[[MathML]]、[[SVG]]。
跟[[CSS]](Cascading Style Sheets,层叠式样式表)结合后,XHTML能发挥真正的威力;这使实现样式跟内容的分离的同时,又能有机地组合网页代码,在另外的单独文件中,还可以混合各种XML应用,比如[[MathML]]、[[SVG]]。


从[[HTML]]到XHTML过渡的变化比较小,主要是为了适应[[XML]]。最大的变化在于文档必须是[[良构|結構良好]]的,所有[[标签]]必须闭合,也就是说开始标签要有相应的结束标签。另外,XHTML中所有的标签必须小写。而按照HTML 2.0以来的传统,很多人都是将标签大写,这点两者的差异显著。在XHTML中,所有的参数值,包括数字,必须用双引号括起来(而在[[SGML]]和HTML中,引号不是必须的,当内容只是数字、字母及其它允许的特殊字符时,可以不用引号)。所有元素,包括空元素,比如img、br等,也都必须闭合,实现的方式是在开始标签末尾加入[[斜扛]],比如<code><nowiki><img ... /></nowiki></code> 、<code><nowiki><br /></nowiki></code>。省略参数,比如<code><nowiki><option selected></nowiki></code>,也不允许,必须用<code><nowiki><option selected="selected"></nowiki></code>。两者的详细差别,可通过[http://www.w3.org/TR/xhtml1/#diffs W3C XHTML说明] 来查阅。
从[[HTML]]到XHTML过渡的变化比较小,主要是为了适应[[XML]]。最大的变化在于文档必须是[[良构|結構良好]]的,所有[[标签]]必须闭合,也就是说开始标签要有相应的结束标签。另外,XHTML中所有的标签必须小写。而按照HTML 2.0以来的传统,很多人都是将标签大写,这点两者的差异显著。在XHTML中,所有的参数值,包括数字,必须用双引号括起来(而在[[SGML]]和HTML中,引号不是必须的,当内容只是数字、字母及其它允许的特殊字符时,可以不用引号)。所有元素,包括空元素,比如img、br等,也都必须闭合,实现的方式是在开始标签末尾加入[[斜扛]],比如<code><nowiki><img ... /></nowiki></code> 、<code><nowiki><br></nowiki></code>。省略参数,比如<code><nowiki><option selected></nowiki></code>,也不允许,必须用<code><nowiki><option selected="selected"></nowiki></code>。两者的详细差别,可通过[http://www.w3.org/TR/xhtml1/#diffs W3C XHTML说明] 来查阅。


== 版本 ==
== 版本 ==
第51行: 第51行:
<syntaxhighlight lang="xml"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd"></syntaxhighlight>
<syntaxhighlight lang="xml"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN" "http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd"></syntaxhighlight>


另外,在[[Microsoft]] [[Internet Explorer]] 5.0所新增的<code>&lt;ruby&gt;</code>小字注解标签,在XHTML 1.1得到支援(参看[[旁註標記]])。<br />
另外,在[[Microsoft]] [[Internet Explorer]] 5.0所新增的<code>&lt;ruby&gt;</code>小字注解标签,在XHTML 1.1得到支援(参看[[旁註標記]])。<br>
而第二版的XHTML 1.0於2002年8月成為[[W3C]]推薦的文件類型。<ref>{{Cite web |url=http://www.w3.org/TR/2002/REC-xhtml1-20020801/ |title=存档副本 |accessdate=2008-09-30 |||}}</ref>
而第二版的XHTML 1.0於2002年8月成為[[W3C]]推薦的文件類型。<ref>{{Cite web |url=http://www.w3.org/TR/2002/REC-xhtml1-20020801/ |title=存档副本 |accessdate=2008-09-30 }}</ref>


2.0止於草案。
2.0止於草案。
第60行: 第60行:
== 有效的XHTML文件 ==
== 有效的XHTML文件 ==
{{HTML}}
{{HTML}}
一個符合(附合)XHTML標準的文件即可稱為''有效''。此可以確保XHTML文件代碼的協調,亦能令文件的更容易被處理,而不需確保各種瀏覽器編譯的一致性。而[[W3C驗証服務]]則可以驗証文件是否有效。而實際上,很多[[網站開發工具]](例如[[Dreamweaver]])都支援以[[W3C]]標準驗証文件。
一個符合(附合)XHTML標準的文件即可稱為''有效''。此可以確保XHTML文件代碼的協調,亦能令文件的更容易被處理,而不需確保各種瀏覽器編譯的一致性。而[[W3C驗証服務]]則可以驗証文件是否有效。而實際上,很多[[網站开发工具]](例如[[Dreamweaver]])都支援以[[W3C]]標準驗証文件。


== 语法 ==
== 语法 ==
第71行: 第71行:


=== 文档应该是結構良好的 ===
=== 文档应该是結構良好的 ===
[[良好結構]](Well-formed)<ref>{{Cite web |url=http://www.w3.org/TR/xhtml1/#wellformed |title=存档副本 |accessdate=2005-04-17 |||}}</ref>是由[[XML]]<ref>{{Cite web |url=http://www.w3.org/TR/xhtml1/#ref-xml |title=存档副本 |accessdate=2005-04-17 |||}}</ref>引入的一个新概念。也就是说所有的元素都必须有结束标签或者以特殊的方式书写(如下所述),而且所有的标签必须合理地嵌套。
[[良好結構]](Well-formed)<ref>{{Cite web |url=http://www.w3.org/TR/xhtml1/#wellformed |title=存档副本 |accessdate=2005-04-17 }}</ref>是由[[XML]]<ref>{{Cite web |url=http://www.w3.org/TR/xhtml1/#ref-xml |title=存档副本 |accessdate=2005-04-17 }}</ref>引入的一个新概念。也就是说所有的元素都必须有结束标签或者以特殊的方式书写(如下所述),而且所有的标签必须合理地嵌套。


儘管如此,交叉使用在SGML中仍然是合法的,而且在現有的瀏覽器中也能够被广泛接受。
儘管如此,交叉使用在SGML中仍然是合法的,而且在現有的瀏覽器中也能够被广泛接受。
第173行: 第173行:


== 外部链接 ==
== 外部链接 ==
* [http://www.w3.org/TR/xhtml1/ XHTML 1.0可扩展超文本标记语言(第二版)]
* [http://www.w3.org/TR/xhtml1/ XHTML 1.0可扩展超文本标记语言(第二版)]
* [http://www.w3.org/TR/xhtml-basic/ XHTML基础]
* [http://www.w3.org/TR/xhtml-basic/ XHTML基础]
* [http://validator.w3.org/ W3C驗証服務]
* [http://validator.w3.org/ W3C驗証服務]
* [http://www.w3.org/TR/xhtml11/ XHTML 1.1 - 基于模块的XHTML]
* [http://www.w3.org/TR/xhtml11/ XHTML 1.1 - 基于模块的XHTML]
* [http://www.w3.org/TR/xhtml2/ XHTML 2.0(草案)]
* [http://www.w3.org/TR/xhtml2/ XHTML 2.0(草案)]
* [https://web.archive.org/web/20070202023144/http://www.dreamdu.com/xhtml/ 中文的XHTML教程]
* [http://www.dreamdu.com/xhtml/ 中文的XHTML教程]
* [http://www.w3.org/MarkUp/ W3C HTML首页]
* [http://www.w3.org/MarkUp/ W3C HTML首页]