我们都知道,html中有大量的标签,div、ul、li、dl、dt、dd、h1~h6、p、a、span、 strong……,我们在运用这些标签进行页面搭建的时候,是可以嵌套起来来使用的(可能面试过程中,有的面试官也会问到相关的标签嵌套规则的问题),但是,嵌套也需要有一定规则,不能任由自己的个人习惯胡乱嵌套,那么,html标签的嵌套规则有哪些呢?我们今天就来简单地给大家说一说。
首先,HTML 标签包括两种 块级元素(block)、内嵌元素(inline)【注意:具体的来说应该是三种,另外一种是行内块元素,常用的就是img和input,这里放在内嵌元素里了】
1、块级元素
一般用来搭建网站架构、布局、承载内容……它包括以下这些标签:
常用的有: div、p、ul、ol、li、dl、dt、dd、fieldset、form、h1~h6、hr、table
另外还有:address、isindex、menu、noframes、noscript、pre、blockquote、center、dir、
2、内嵌元素
一般用在网站内容之中的某些细节或部位,用以“强调、区分样式、上标、下标、锚点”等等,下面这些标签都属于内嵌元素:
常用的有: span、a、b、strong、i、em、label、textarea、small、img、input(img和input,这里放在内嵌元素里了)
另外还有:abbr、acronym、bdo、big、br、cite、code、dfn、font、kbd、q、s、samp、select、strike、sub、sup、tt、u、var
二、HTML 标签的嵌套规则
1. 块元素可以包含内联元素或某些块元素,但内联元素却不能包含块元素,它只能包含其它的内联元素:
例如:
<div><h1></h1><p></p></div> —— 对
<a href=”#”><span></span></a> —— 对
<span><div></div></span> —— 错
2. 块级元素不能放在<p>里面:
例如:
<p><ol><li></li></ol></p> —— 错
<p><div></div></p> —— 错
3. 有几个特殊的块级元素只能包含内嵌元素,不能再包含块级元素,这几个特殊的标签是:
h1、h2、h3、h4、h5、h6、p、dt
4. li 内可以包含 div 标签 —— 这一条其实不必单独列出来的,但是网上许多人对此有些疑惑,就在这里略加说明:
li 和 div 标 签都是装载内容的容器,地位平等,没有级别之分(例如:h1、h2 这样森严的等级制度^_^),要知道,li 标签连它的父级 ul 或者是 ol 都 可以容纳的,为什么有人会觉得 li 偏偏容纳不下一个 div 呢?别把 li 看得那么小气嘛,别看 li 长得挺瘦小,其实 li 的胸襟很大 滴……
5. 块级元素与块级元素并列、内嵌元素与内嵌元素并列:
例如:
<div><h2></h2><p></p></div> —— 对
<div><a href=”#”></a><span></span></div> —— 对
<div><h2></h2><span></span></div> —— 错