选择显示字体大小

网页标准初学:xhtml与html的区别

  因为xhtmlxml的一个应用,一些在基于sgml的html 4中完全合法的习惯在xhtml中必须改变。

  文档必须是编排良好的

  编排良好性well-formedness是[xml]引入的一个新概念。从本质上说,这意味着元素必须有结束标签,或者必须以特殊方式书写(在下面说明)。

  元素必须嵌套,尽管sgml规定层叠非法,但现有的浏览器普遍允许层叠。

  正确:嵌套元素。

<p>here is an emphasized <em>paragraph</em>.</p>

  不正确:层叠元素。

<p>here is an emphasized <em>paragraph.</p></em>

  元素和属性名必须小写

  对所有html元素和属性名,xhtml 文档必须使用小写。 因为xml是大小写敏感的,所以这个差别是必须的。如 <li> 和 <li> 是不同的标签。

  对非空元素,必须使用结束标签

  在基于 sgml的 html 4 中,一些隐含结束意义的元素允许忽略结束标签。而在基于xml的xhtml中,这种忽略不被允许。除了在dtd中被声明为空的元素,所有元素必须有结束标签。

  正确:结束了的元素。

<p>here is a paragraph.</p><p>here is another paragraph.</p>

  不正确:未结束元素。

<p>here is a paragraph.<p>here is another paragraph.

  属性值必须在引号中

  所有的属性必须用引号,即使是数字。

  正确:在引号中的属性值

<table rows="3">

  不正确:不在引号中的属性值。

<table rows=3>

  属性最小化

  xml 不支持属性最小化. 属性值对必须写全。象compact,checked这样的属性名不能不指定属性值而在元素中出现。

  正确:没有最小化的属性

<dl compact="compact">

  不正确:最小化属性

<dl compact>

  空元素

  空元素要么必须有结束标签,要么起始标签以/>结束. 例如,<br/>或<hr></hr>. 请参看html兼容性指导 html compatibility guidelines 中的信息,以保证向后兼容html 4用户代理程序

  正确:结束的空元素

<br/><hr/>

  错误:未结束的空标签

<br><hr>

  属性值中的空白字符处理

  对属性值,用户代理程序将删去引导和后序空白符,将一个或多个空白符(包括换行)转换成单个字符间空间(在西方书写体中是一个ascii空格) see section 3.3.3 of [xml]。

  script and style 元素

  在xhtml中,script和style元素声明为#pcdata内容形式,因此,< 和 & 被看作是标识的开始,&lt和&amp 这样的实体被xml处理程序看作为实体引用而分别被认为是< 和 & . 将script和style元素的内容包裹在cdata记号部分中避免了这些实体的扩张。

<script>
 <![cdata[
 ... unescaped script content ...
 ]]>
 </script>

  cdata 部分被 xml 处理程序识别,是文档对象模型中一个结点。请参看1.3节section 1.3的dom level 1推荐标准[dom]。

  替代的方式是使用外部script和style文档。

  sgml 禁止

  sgml 给作者的dtd可以指定在一个元素内部禁止出现的元素。这样的禁止在xml中是不可能的。

  例如,严格的 html 4 dtd 禁止任何深度的’a’元素对另一’a’元素的嵌套。在xml中无法写出这样的禁止。尽管这些禁止不能在dtd中定义,一些元素不应该被嵌套。在标准化的附录b appendix b中是这些元素的汇总。

  具有 'id' 和 'name' 属性的元素

  html 4 定义了name属性的元素有 a,applet,form,frame,iframe,img,and map. html 4还引入了 id 属性. 这两个属性都是被设计作为片段标识符。

  在xml中,片段标识符是id类型,每个元素只能有一个id类型的属性。因此,在xhtml1.0中,id属性被定义为id类型。为保证xhtml1.0文档是结构良好的xml文档,在定义一个片段标识符时,xhtml文档必须使用id属性,即使是对那些以前用name属性的元素。请参看 html compatibility guidelines 的信息,确保xhtml文档以text/html媒体类型使用时,这些”锚”能向后兼容。

  注意,在xhtml 1.0中,name 属性不被正式支持,在以后的xhtml版本中将被删除。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons