(X)HTML Strict 下的嵌套规则

作者:junchen 来源:junchen博客 时间:2008-03-08 18:39:00 

下面是一份在 HTML 4 Strict 和 XHTML 1.0 Strict 下必须遵守的标签嵌套规则,比如你不能在 <a> 里面再嵌入一个 <a> 这样的约定。

说明

  • 为了方便读者阅读,本文中的标签使用了大写(根据 XHTML 的规则,元素名必须小写,比如 <html> 而不应是 <HTML>)

  • 小写的单词表明一组或一系列 HTML 标签

  • 每一项条目(标签)后都跟随一组标签列表,如果没有这个列表,那么表明该条目(标签)内部不允许包含任何标签。这意味着该条目内部只能包含纯文本内容(#PCDATA,见下文)。如果注明 (empty),这意味着该条目内部不允许包含任何形式的内容。

  • #PCDATA 的意思是“parsed character data”,即纯文本内容(不包括任何 HTML 标签,但是转义内容可以存在,比如 &auml; 和 &auml;)

  • CDATA 的意思是“character data”,这意味着不包括转义内容的纯文本内容,详细内容可以参考CDATA Confusion

  • excluding ... 意即不得直接或者间接的包含所列的元素

注1:以上内容基于 [HTML 4.01 Specification] 的 Strict DTD。

注2:对于 XHTML 1.0,基本上一致,不同点如下:

  • 对于 <script> 和 <style> 的内容,在 HTML 4 里是 CDATA 而在 XHTML 里是 #PCDATA

  • 在 XHTML 中,<table> 标签后可以紧跟一个 <tr>,而在 HTML 4.01 里,不允许这样,不过 <tbody> 标签又是可以省略的。意思就是说,如果代码中的 <table> 后紧跟 <tr>,对于 HTML 4.01,会隐性的生成一个 <tbody> 标签,而在 XHTML 里面就没有。这会影响到样式表使用 tbody 作为选择器。

标签:HTML,XHTML,标签,标准
0
投稿

猜你喜欢

  • [奇招] JS暴虐查找算法

    2008-07-06 21:17:00
  • asp 自定义分段函数/求第N名成绩

    2011-03-25 11:07:00
  • Data URI 和 MHTML

    2009-08-16 16:19:00
  • ASP处理XSLT转换XML的实现

    2008-10-20 18:37:00
  • CSS自定义属性Expression

    2011-04-29 14:17:00
  • 正则表达式语法速查

    2007-11-11 10:43:00
  • 在sql Server自定义一个用户定义星期函数

    2012-02-12 15:47:28
  • asp函数转换xml中的实体字符[转义符]

    2008-10-16 17:07:00
  • 大家一起来折磨浏览器吧!(好玩的东东)

    2010-02-07 12:40:00
  • SQL Server 2005中的CLR集成

    2009-03-10 15:07:00
  • asp实现通过session来统计在线人数的方法

    2007-08-13 12:56:00
  • Oracle 实现类似SQL Server中自增字段的一个办法

    2009-08-02 07:51:00
  • MS SQL 查询数据在数据库中所在行

    2009-04-26 19:36:00
  • 潜谈产品设计中的可用性和可访问性

    2009-01-18 12:47:00
  • 用户凭什么跟你注册?

    2011-06-10 13:16:00
  • 远程连接sql server 2000服务器的解决方案

    2010-03-08 13:33:00
  • ADSI+ASP添加IP到IIS禁止访问列表中

    2011-04-02 10:42:00
  • html风格tooltip效果的实现

    2010-04-08 13:00:00
  • 怎么样在网页上读取远程xml的数据

    2008-10-10 17:43:00
  • SQL Server 日期相关资料详细介绍

    2012-07-11 16:14:07
  • asp之家 网络编程 m.aspxhome.com