文档必须是编排良好的
元素必须嵌套,尽管SGML规定层叠非法,但现有的浏览器普遍允许层叠。
正确:嵌套元素。
here is an emphasized paragraph.
不正确:层叠元素。
here is an emphasized paragraph.
嵌套与层叠
元素和属性名必须小写
对所有HTML元素和属性名,XHTML 文档必须使用小写。 因为XML是大小写敏感的,所以这个差别是必须的。如 < li > 和 < LI > 是不同的标签。
对非空元素,必须使用结束标签
在基于SGML的HTML 中,一些隐含结束意义的元素允许忽略结束标签。而在基于XML的XHTML中,这种忽略不被允许。除了在DTD中被声明为空的元素,所有元素必须有结束标签。
正确:结束了的元素。
here is a paragraph.
here is another paragraph.
不正确:未结束元素。
here is a paragraph.
here is another paragraph.
XHTML要求代码书写非常标准,可能有时候浏览器可以容许这样的写法,但是无法通过XHTML的验证。
属性值必须在引号中
所有的属性必须用引号,即使是数字。
正确:在引号中的属性值
不正确:不在引号中的属性值。
很基本的规范,在HTML同样应该如此。
属性最小化
XML 不支持属性最小化. 属性值对必须写全。象compact,checked这样的属性名不能不指定属性值而在元素中出现。
正确:没有最小化的属性
不正确:最小化属性
默认的属性也需要完整的写出来。
空元素
空元素要么必须有结束标签,要么起始标签以/>结束。
正确:结束的空元素
错误:未结束的空标签
这点非常重要,很容易出现的错误。
编排良好性(Well-formedness)是XML引入的一个新概念。从本质上说,这意味着元素必须有结束标签,或者必须以特殊方式书写。