HTML基础入门学识.docx
《HTML基础入门学识.docx》由会员分享,可在线阅读,更多相关《HTML基础入门学识.docx(14页珍藏版)》请在冰豆网上搜索。
![HTML基础入门学识.docx](https://file1.bdocx.com/fileroot1/2023-1/29/49ce4af9-531d-4bba-aec3-46162ab5bc54/49ce4af9-531d-4bba-aec3-46162ab5bc541.gif)
HTML基础入门学识
XHTML基础入门学识
摘要
XHTML1.0是作为XML1.0应用而重新制定的HTML4。
本规范书定义XHTML1.0以及其中与HTML4对应的3种文档类型定义(DTD,DocumentTypeDefinition)。
每个元素的语义和它们的属性已经在W3CRecommendationforHTML 4中定义,它们是XHTML将来扩展的基础。
只要遵循一小套指导方针,XHTML文档就能和现存的HTML用户代理程序兼容。
本文档的状况
本节描述本文档发布时的状况。
其它的文档也许会取代本文档。
W3C负责维护本文档系列的最新状况。
本文档由W3C的成员和一些对此感兴趣的团体审阅,并经主管认可而成为W3C推荐标准。
这是一个稳定的文档,可以作为参考材料或在其它文档中作为标准引用。
W3C制定本推荐标准的目的就是使大家注意到本规范说明书,使之广泛传播,增强Web的功能和互用性。
1.什么是XHTML?
XHTML是一系列当前和将来的文档类型和程序块,它由HTML4[HTML]再生和扩展而来,HTML4是其子集。
XHTML系列文档基于XML,最终被设计用来与基于XML的用户代理程序一起工作。
XHTML家族的详情及其发展过程在未来趋势一节中详述。
XHTML1.0(本规范书)是XHTML家族的第一个文档。
它是将3种HTML4文档类型应用到XML1.0[XML]之后重新形成的。
其意图是,作为一种语言,它的内容既符合XML,并且如果依照一些简单的指导方针,也能被HTML4用户代理程序识别。
开发者将它们的文档移植成为XHTML1.0,会得到以下好处:
XHTML文档遵从XML。
这样,用标准的XML工具很容易查看,编辑和检验它们。
XHTML文档可以在现有的HTML4代理用户程序中使用,也可以在新的XHTML用户代理程序中使用,在后者中可以达到与前者同样或更好的效果。
XHTML文档中使用的应用程序(如script和applet)可以是HTML的文档对象模型(DocumentObjectModel),也可以是XML的文档对象模型[DOM]。
随着XHTML家族的发展,遵从XHTML1.0的文档更有可能运用在各种XHTML环境中。
XHTML家族是Internet发展的下一步。
将现在将文档移植成XML,开发者在确保他们的文档向前后兼容的同时,还能享有进入XML世界带来的好处。
1.1什么是HTML4?
HTML4[HTML]是SGML(StandardGeneralizedMarkupLanguage)的一个应用,遵从国际标准ISO8879,被广泛的当作WorldWideWeb上的标准出版语言。
SGML是一种描述标记语言,特别是那些用于电子文档交换,文档管理和文档发布语言的语言。
HTML是SGML定义的语言的一个实例。
SGML出现在80年代中期,一直保持得很稳定。
稳定是原因是它有丰富的特征和具有灵活性。
但是,灵活性的带来一定程度的复杂性,限制了它在多种环境下的适应性,包括WorldWideWeb。
HTML最初的构想是作为一种交换科学和其它技术文档的一种语言,供那些不熟悉书写文档的专家使用。
HTML规定一小套结构语义标签,适于书写相对简单的文档,从而解决了SGML复杂性的问题。
除了简化了文档结构外,HTML还加入了对超文本的支持,以后还增加了媒体功能。
在非常短的时间内,HTML变得广泛流行,并且很快超出了其原来的目的。
HTML(标准)内部的新元素以很快的速度创造出来,HTML也被很快的改编以用于垂直的,高度专门化的市场。
多余的新元素导致文档在跨平台时的兼容问题。
随着软件和平台不一致性增加,很显然,“经典的”HTML4在这些平台上使用的适用性就会受到一些限制。
1.2什么是XML?
XML[XML]是ExtensibleMarkupLanguage的缩写,创造XML的目的是重新获得SGML的能力和灵活性,而去除其大部分复杂的东西。
尽管是一个受限制SGML的形式,但是XML仍保留了SGML的大部分功能和丰富性,还保留了SGML的所有常用特性。
在保留这些有用的特性的同时,XML去掉了SMGL中很多更复杂的特性,这些特性使得书写和设计合适的软件既困难又昂贵。
1.3为什么需要XHTML?
上面已经提到了移植到XHTML的好处,一般来说,移植到XHTML的好处有:
文档开发者和用户代理程序设计商常常用新方法,新标签来表达它们的想法。
用XML导入新元素和新的元素属性相对来说更容易。
XHTML家族被设计用来提供这些扩展,通过XHTML模块和开发新的遵从XHTML的模块的技术。
(将在即将出台的XHTML模块化规范说明书中描述)。
在开发文档和设计新用户代理程序时,这些模块将允许混合使用现有的和新的特性集。
各种替代的访问Internet的方法不断的被提出。
一些人估计,到2002年,internet上75%的文档会在这些替代的平台上被查看。
XHTML在设计时就考虑到用户代理程序的协同工作性。
通过一个新的用户代理程序和文档协议机制,服务器、代理程序和用户代理程序将能够最佳地满足传输,最后,有可能开发出遵循XHTML的文档,能被任何遵循XHTML的用户代理程序使用。
2.定义
2.1术语
本规范书要用到下面的词条。
这些词条基于ISO/IEC9945-1:
1990[POSIX.1]中类似的定义,并扩展定义在[RFC2119]中:
执行定义(Implementation-defined)
一个值或行为被执行定义时,它由执行来定义相应的需要以正确解释文档。
可以(May)
在执行时,词“可以”被解释为一个可选的特性,在本规范书中不是必须的,但是可以提供。
对于文档一致性来说,词”可以”的意思是不能使用可选的特性.”可选的”(optional)和”可以”的定义是相同的。
必须(Must)
在本规范书中,“必须”被解释为,在执行时或对于严格遵循XHTML的文档的强制需要。
词条”应当”(shall)和”必须”的定义相同。
.
保留(Reserved)
一个值或行为未被指定,但是不允许用于符合规范的文档,也不被符合规范的用户代理程序支持。
应该(Should)
在执行时,”应该”被解释为一个执行时的建议,但不是一个必须。
对于文档来说,“应该”被解释为:
编程练习时是推荐使用的,对于严格遵循XHTML的文档,则是必须的。
被支持(Supported)
本规范书中某些功能是可选的,如果一个功能被支持,它的行为被本规范书规定。
未指定(Unspecified)
一个值或行为未被指定时,规范书不定义一个功能的可移植性要求,即使文档中使用了这个功能。
在这种情况下,一个需要指定的行为的文档,而不是在使用这个功能时允许任何行为,不是一个严格遵循XHTML的文档。
2.2常见词条
属性(Attribute)
属性是在DTD中声明过的某个元素的一个参数。
属性的类型和取值范围,包括它可能的缺省值,在DTD中定义。
DTD
一个DTD,又称文档类型定义,是一个XML声明集合,在其中定义遵从DTD的文档中使用的合法的结构,元素和属性。
文档(Document)
文档是一个数据流,还包括它引用的其它数据流。
文档的结构是用相关的DTD定义的元素组织起来来保存信息。
更多信息,请参看DocumentConformance。
元素(Element)
元素是在DTD中声明的文档的结构单位。
元素的内容模型在DTD中定义,额外的语义可以在另外的元素描述中定义。
功能(Facilities)
功能包括元素,属性和与元素属性相关的语义。
支持这些功能的执行说成提供了所需的功能。
执行(Implementation)
执行是指系统提供了功能和服务集以支持本规范书。
更多信息,请参看UserAgentConformance。
分析(Parsing)
分析是扫描文档的动作,文档包含的信息被过滤成元素的上下文结构包含的信息。
显示(Rendering)
显示是文档信息被呈现的动作。
显示以最适合环境的形式完成(如声觉,视觉,打印)。
用户代理程序(UserAgent)
用户代理程序是执行程序,获取并处理XHTML文档。
更多信息,请查看UserAgentConformance。
验证(Validation)
验证是用相关的DTD检验文档的过程,以确信结构,元素的使用,属性的使用和DTD中的定义一致。
格式良好(Well-formed)
一个格式良好的文档的结构依照XML1.0推荐标准[XML]中2.1节Section2.1的规定。
基本上,这个定义规定了元素必须有起始和结束标签,要正确的互相嵌套。
3.XHTML1.0的标准定义
3.1文档一致性
本版本XHTML提供了严格的遵循XHTML文档的定义,受限于XHTML名址提供的标签和属性。
使用XHTML其它名址空间的信息,如RDF表达的元数据,请参看Section3.1.2。
3.1.1严格遵循的文档。
一个严格遵循XHTML的文档只需要本规范书描述的强制性功能,必须依照下列标准:
它必须经过附录AAppendix A中的3中DTD之一的验证。
文档的根元素必须是。
文档的根元素必须用xmlns属性[XMLNAMES]指定XHTML名址。
XHTML的名址在http:
//www.w3.org/1999/xhtml中定义。
在根元素之前,必须有一个DOCTYPE声明。
DOCTYPE声明中包含的公共标识符必须引用附录AAppendix A中的3中DTD的一种,每种DTD有各自的正式公共标识符。
系统标识符可以改变以适应本地系统。
DOCTYPEhtml
PUBLIC"-//W3C//DTDXHTML1.0Strict//EN"
"DTD/xhtml1-strict.dtd">
DOCTYPEhtml
PUBLIC"-//W3C//DTDXHTML1.0Transitional//EN"
"DTD/xhtml1-transitional.dtd">
DOCTYPEhtml
PUBLIC"-//W3C//DTDXHTML1.0Frameset//EN"
"DTD/xhtml1-frameset.dtd">
下面是一个最小的XHTML文档示例:
xmlversion="1.0"encoding="UTF-8"?
>
DOCTYPEhtml
PUBLIC"-//W3C//DTDXHTML1.0Strict//EN"
"DTD/xhtml1-strict.dtd">
//www.w3.org/1999/xhtml"xml:
lang="en"lang="en">
VirtualLibraryMovedto//vlib.org/">vlib.org.
注意在这个例子中含有XML声明。
XML声明并不是在所有的XML文档中都是必须的。
XHTML被强烈建议使用XML声明。
当字符编码不是缺省的UTF-8或UTF-6时,这样的声明是必须的。
3.1.2在XHTML中使用其它名址空间
在XHTML名址空间中可以用[XMLNAMES]使用其它XML名址空间,尽管这样文档会不是严格遵循XHTML的文档。
W3C将在以后致力为多名址空间指定一致性的问题。
下面的例子说明XHTML1.0和MathML推荐标准联合使用的方法。
//www.w3.org/1999/xhtml"xml:
lang="en"lang="en">
AMathExampleThefollowingisMathMLmarkup:
//www.w3.org/1998/Math/MathML">
3
x