a标签嵌套-标签嵌套规则

开发时偶然写到两个a标签嵌套,发现一个奇怪问题。

在chrome浏览器上:

1
<a> 外层a标签 <a> 内层a标签 </a> </a>

结果浏览器解析成了:

1
<a> 外层a标签 </a> <a> 内层a标签 </a>

首先html元素包括块级元素和内嵌元素:

1.块级元素
address、blockquote、center、dir、div、dl、dt、dd、fieldset、form、h1~h6、hr、 isindex、menu、noframes、noscript、ol、p、pre、table、ul
2.内嵌元素
a、abbr、acronym、b、bdo、big、br、cite、code、dfn、em、font、i、img、input、kbd、label、q、s、samp、select、small、span、strike、strong、sub、sup、textarea、tt、u、var

下面我们就来总结一下标签的嵌套规则:

  • 块级元素可以包含内嵌元素或某些块级元素,但内嵌元素不能包含块级元素,只能包含某些内嵌元素
  • 块级标签不能放到p标签,h1~h6标签和dt标签里

下面可以参考WEB标准系列-HTML元素嵌套特别详细。