当前位置: 首页 > 图文教程 > 网页制作 > HTML/XHTML教程 > Web标准知识:(X)HTML Strict 下的嵌套规则

HTML/XHTML教程
XHTML入门学习教程:网页Head和DTD
XHTML入门学习教程:XHTML超级链接
XHTML入门学习教程:列表标签的使用
XHTML入门学习教程:文字格式与特殊字符
XHTML入门学习教程:XHTML标签
XHTML入门学习教程:XHTML常用标签
XHTML入门学习教程:什么是XHTML?
XHTML入门学习教程:简单网页制作
HTML网页的基本组成概述
表格边框的css语法
HTML表格标记教程(48):CSS修饰表格
HTML表格标记教程(46):表格的表尾标记
HTML表格标记教程(47):表格嵌套
HTML表格标记教程(45):表格的表主体标记
HTML表格标记教程(43):表头的垂直对齐属性VALIGN
HTML表格标记教程(44):表格的表首标记
HTML表格标记教程(42):表头的水平对齐属性ALIGN
HTML表格标记教程(40):表头的暗边框色属性BORDERCOLORDARK
HTML表格标记教程(39):表头的亮边框色属性BORDERCOLORLIGHT
HTML表格标记教程(38):表头的边框色属性BORDERCOLOR

HTML/XHTML教程 中的 Web标准知识:(X)HTML Strict 下的嵌套规则


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-04   浏览: 50 ::
收藏到网摘: n/a

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

说明:

  • 为了方便读者阅读,本文中的标签使用了大写(根据 XHTML 的规则,元素名必须小写,比如 <html> 而不应是 <HTML>)
  • 小写的单词表明一组或一系列 HTML 标签
  • 每一项条目(标签)后都跟随一组标签列表,如果没有这个列表,那么表明该条目(标签)内部不允许包含任何标签。这意味着该条目内部只能包含纯文本内容(#PCDATA,见下文)。如果注明 (empty),这意味着该条目内部不允许包含任何形式的内容。对于flow,inline,block,OBJECT 和 BODY,其内部允许包含的内容在文中会单独给出。
  • #PCDATA 的意思是“parsed character data”,即纯文本内容(不包括任何 HTML 标签,但是转义内容可以存在,比如 ä 和 ä)
  • CDATA 的意思是“character data”,这意味着不包括转义内容的纯文本内容,详细内容可以参考CDATA Confusion
  • excluding ... 意即不得直接或者间接的包含所列的元素


注1. 以上内容基于 [HTML 4.01 Specification] 的 Strict DTDJunChen 翻译自 Allowed nesting of elements in HTML 4 Strict (and XHTML 1.0 Strict)


注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 作为选择器。