小组分享--HTML(5)嵌套规则

HTML/XHTML嵌套规则

  1. 块级元素与块级元素平级、内嵌元素与内嵌元素平级
  2. 块级元素可以包含内联元素或某些块元素,但是内联元素不能包含块元素,它只能包含其他的内联元素。
  3. 有几个特殊的块级元素只能包含内嵌元素,不能再包含块级元素
    h1~h6、p、dt
  4. 块级元素不能放在标签p里面
  5. li标签可以包含标签,因为li和div标签都是装载内容的容器。

HTML5标签嵌套规则

在讲标签嵌套规则之前我们先来讲一下标签的分类

分类

html5出现之前,经常把元素按照block、inline、inline-block来区分。
在html5中,元素不再按照display属性来区分,而是按照内容模型来区分,分为:


① 元数据型(metadata content):可以被用于说明其他内容的表现或行为,或者在当前文档和其他文档之间建立联系的元素<base> <link> <meta> <script> <style> <title>
···<base> 标签为页面上的所有链接规定默认地址或默认目标。
···例:假设图像的绝对地址是:<img src="img/login_logo.png" />
现在我们在页面中的 head 部分插入 <base> 标签,规定页面中所有链接的基准 url:

<head>
 <base href="img/" />
</head>

在上例中的页面上插入图像时,我们就可以规定相对的地址,浏览器会寻找文件所使用的完整 URL:
<img src="pic.gif" />

区块型(sectioning content):是用于定义标题及页脚范围的元素<article> <aside> <nav> <section>
标题型(heading content):定义一个区块/章节的标题h1 h2 h3 h4 h5 h6
文档流型(流元素)(flow content):是在应用程序和文档的主体部分中使用的大部分元素<a> <abbr> <address> <area>(如果它是map元素的子元素) <article> <aside> <audio> <b> <blockquote> <br> <button> <canvas> <cite> <code> <data> <div> <dl> <em> <footer> <form> <h1> <h2> <h3> <h4> <h5> <h6> <header> <hr> <i> <iframe> <img> <input> <label> <main> <map> <mark> <math> <meter> <nav> <object> <ol> <output> <p> <pre> <progress><script> <section> <select> <small> <span> <strong> <sub> <sup> <svg> <table> <template> <textarea> <time><ul> <var> <video> <text>
语句型(phrasing content):是用于标记段落级文本的元素a abbr area (如果它是map元素的子级) audio b bdi bdo br button canvas cite code data datalist del dfn em embed i iframe img input ins kbd keygen label map mark math meter noscript object output progress q ruby s samp script select small span strong sub sup svg template textarea time u var video wbr text
内嵌型(embedded content):是引用或插入到文档中其他资源的元素
audio canvas embed iframe img math object svg video
交互型(interactive content):是专门用于与用户交互的元素a audio(如果设置了controls属性) button embed iframe img(如果设置了usemap属性) input(如果type属性不为hidden) keygen label object(如果设置了usemap属性) select textarea video (如果设置了controls属性)
元素不属于任何一个类别,被称为穿透的;元素可能属于不止一个类别,称为混合的。

子元素

【1】子元素是流元素
<article>、<section>、<blockquote>、<li>、<dd>、<figcaption>、<div>、<main>、<td>
  【1.1】子元素是流元素,不包括<main>元素
<aside>、<nav>
  【1.2】子元素是流元素,但不包括<table>元素
<caption>
  【1.3】子元素是流元素,但不包括<form>元素
<form>
  【1.4】子元素是流元素,但不包括<header>、<footer>、<main>元素
<header>、<footer>、<main>
  【1.5】子元素是流元素,但不包括<header>、<footer>、区块型元素(sectioning content)、标题型元素(heading content)

<dt>、<th>
  【1.6】子元素是流元素,但不包括<header>、<footer>、<address>、区块型元素(sectioning content)、标题型元素(heading content)
<address>
【2】子元素是语句型元素
<h1>、<h2>、<h3>、<h4>、<h5>、<h6>、<p>、<pre>、<em>、<strong>、<small>、<s>、<cite>、<q>、<abbr>、<data>、<time>、<code>、<var>、<samp>、<kbd>、<sub>、<sup>、<i>、<b>、<u>、<mark>、<bdi>、<bdo>、<span>、<input>、<output>、<legend>、<label>
  【2.1】子元素是语句型元素,但不包括和自身相同的元素
<dfn>、<progress>、<meter>
  【2.2】子元素是语句型元素,但不包括交互型元素(interactive content)
<button>
【3】无子元素
<hr>、<br>、<wbr>、<img>、<embed>、<param>、<source>、<track>、<area>、<col>、<keygen>
  【3.1】子元素可以没有、可以是<li>元素,也可以是<script>、<template>元素
<ol>、<ul>
  【3.2】子元素可以没有、可以是<dt>和<dd>元素,也可以是<script>、<template>元素
<dl>
  【3.3】子元素可以没有,可以是<option>、<optgroup>(<optgroup> 标签把相关的选项组合在一起),也可以是<script>、<template>元素
<select>
  【3.4】子元素可以没有,可以是<option>,也可以是<script>、<template>元素
<optgroup>
  【3.5】子元素可以没有、可以是<option>元素
<datalist>
  【3.6】子元素可以没有,可以是<tr>,也可以是<script>、<template>元素
<tbody>、<thead>、<tfoot>
  【3.7】子元素可以没有,可以是<tr>、<th>,也可以是<script>、<template>元素
<tr>
【4】子元素是<caption>、<colgroup>、<thead>、<tfoot>、<tbody>,也可以是<script>、<template>元素
<table>
【5】子元素是文本内容
<textarea>
  【5.1】子元素可以没有,也可以是文本内容
<option>

常用标签的嵌套规则总结

【1】<h1>、<h2>、<h3>、<h4>、<h5>、<h6>、<p>的子元素是语句型元素
【2】<header>、<footer>不可嵌套<header>、<footer>
【3】<a>的子元素是transparent(以它的父元素允许的子元素为准),但不包括交互型元素(interactive content)
【4】<form>不可嵌套<form>
【5】<button>子元素是语句型元素,不可嵌套交互型元素(interactive content)
【6】<caption>(caption 元素定义表格标题)不可嵌套<table>
【7】<dt>、<th>不可嵌套<header>、<footer>、区块型元素(sectioning content)、标题型元素(heading content)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,099评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,828评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,540评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,848评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,971评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,132评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,193评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,934评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,376评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,687评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,846评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,537评论 4 335
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,175评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,887评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,134评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,674评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,741评论 2 351

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,744评论 1 92
  • HTML4的元素嵌套规则 在我们的印象中会有这样的嵌套规则: 内联元素不能嵌套块元素 元素和 元素不能嵌套块元素 ...
    zpeople阅读 1,081评论 0 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,642评论 18 139
  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 5,047评论 0 29
  • 最近思绪混乱,理不清 越近归期越心慌
    沧海一粟贝阅读 124评论 0 0