Skip to content

xhtml入门之标签嵌套

今天我们就来讨论一下xhtml中标签的嵌套。

我们知道xhtml中的许多xhtml标签,如:div、ul、li、dl、dt、dd、h1-h6、p、a、address、span、strong等在使用的时候可以将它们无限嵌套。但是,这也还是有一定规则的。

ul标签包含li,dl标签包含dt和dd这些规则十分明确,但是像其它元素没有被捆绑在一起,是怎么嵌套的呢?

先来了解两个概念,块级元素(block)和内嵌元素(inline),划分很简单的,如下:

block1
block2

inline1 inline2

像上面那种一个元素占领自己那一行空间的情况,可以叫它块级元素(block);而像下面这种几个元素并列在一行,叫内嵌元素(inline)。(这两种元素可以通过样式相互转换的:display:block,display:inline)

块级元素,如:div、ul、li、dl、dt、dd、h1 - h6、p、address……

内嵌元素,如:a、span、strong、sub、sup、img……

于是,我在网上搜来了些规则:

一、块元素可以包含内联元素或某些块元素,内嵌元素不能包含块元素,只能包含其它的内联元素

<div><p>a</p><div></div></div>(可以)

<a href="http://blog.seacoffee.net"><span>haha</span></a>(可以)

<span><div>不行</div></span>(不可以)

二、li内可以包含div标签

三、有些特殊块级元素只能包含内嵌元素,这些元素是:h1 – h5 、p、dt

看了下,CSS森林里面有相关的文档,大家移动到此查看。XHTML标签规则速查文档