元素和属性必须小写
XHTML文档必须使用小写字母表示所有的HTML元素和属性名称。这种区别是必要的,因为XHTML文档被假定为XML文档,XML是区分大小写的。例如,
和是不同的标签。所有元素都需要结束标记
在HTML中,某些元素可以省略结束标记。但XML不允许省略结束标记。
正确:终止的元素
这是一个段落。
这是另一个段落
错误:未终止的元素
这是一个段落。
这是另一个段落。
必须始终引用属性值
所有属性值(包括数值)都必须加引号。
正确:引用属性值
不正确:未引用的属性值
属性简写
XML不支持属性简写。 Attribute-value 属性-值必须全部写入。属性名称(如compact和checked)不能在没有指定值的元素中出现。
正确:非简写的属性
错误:简写的属性
属性值中的空白处理
当浏览器处理属性时,它执行以下操作 -
带前导和尾随空格。
将一个或多个空格字符(包括换行符)映射到单个单词空间中。
脚本和样式元素
在XHTML中,脚本(script)和样式(style)元素不应该直接存在“
在CDATA标记部分内包装脚本或样式元素的内容可以避免这些实体的扩展。
... 转义的VB或java脚本在这里... ...
]]>
另一种方法是使用外部脚本和样式文档。
带有id和name属性的元素
XHTML推荐用id属性替换name属性。请注意,在XHTML 1.0中,这些元素的名称属性已被正式弃用,并将在后续版本的XHTML中被删除。
具有预定义值集的属性
HTML和XHTML都有一些具有预定义和有限值的属性。例如,输入元素的type属性。在HTML和XML中,这些被称为枚举属性。在HTML 4下,这些值的解释是不区分大小写的,所以TEXT的值相当于文本的值。
在XHTML下,这些值的解释是区分大小写的,所有这些值都是以小写字母来定义的。
作为十六进制值的实体引用
HTML和XML都允许使用十六进制值引用字符。在HTML中,这些引用可以使用&#Xnn; 或者&#xnn; 而且它们是有效的,但在XHTML文档中,只能使用小写字母,例如&#xnn; 。
元素是必须的
所有的XHTML元素都必须嵌套在根元素中。所有其他元素都可以有子元素,它们必须成对并正确嵌套在其父元素中。
基本的文件结构是: