搜索

首页  >  问答  >  正文

javascript - 在HTML中,为什么<h>被划分为容器级标签,而<p>被划分为文本级标签?(注意是HTML划分,不是CSS)

html中的容器级标签和文本级标签,css中的块级元素和行内元素是我们常常拿来比较的四个名词

容器标签

容器级的标签可以简单的理解为能嵌套其它所有标签的标签。
常见容器级的标签: p h ul ol dl li dt dd ...。
文本标签

文本级的标签对应容器级标签,只能嵌套文字/图片/超链接的标签。
常见文本级的标签:span p buis strong em ins del ...。
块级元素

css中的块级元素基本与html中的容器级标签对应,包括: p p h ul ol dl li dt dd ...。

ps:不用刻意去记忆哪些标签是文本级的哪些标签是容器级, 在企业开发中一般情况下要嵌套都是嵌套在p中, 或者按照组标签来嵌套(ul>li, ol>li , dl>dt+dd).*
行内元素

行内元素也基本与文本标签对应:span buis strong em ins del。

怪我咯怪我咯2774 天前355

全部回复(2)我来回复

  • 伊谢尔伦

    伊谢尔伦2017-04-11 12:45:28

    这种有争议的内容一般先给个出处吧。其实很多情况都是翻译本身有问题,然后被转载的时候改来改去就成以讹传讹了……


    MDN上的说法是Heading Elements(即<h1>~<h6>的合称)的分类同时是Flow content、heading content和palpable content,但哪个才是“容器级”标签我不好分辨,建议还是用英文吧~

    出处:

    1. MDN:Heading Elements

    2. MDN:Content categories

    回复
    0
  • 高洛峰

    高洛峰2017-04-11 12:45:28

    大约是因为很多浏览器允许你写不闭合的标签。

    <p>aaa
    <p>bbb
    

    会被解析成

    <p>aaa</p>
    <p>bbb</p>

    如果允许嵌套,那么这样写的页面就会GG

    回复
    0
  • 取消回复