首页 > web前端 > H5教程 > 正文

解析HTML5中的标签嵌套规则

零下一度
发布: 2017-05-25 13:50:01
原创
3038人浏览过

下面小编就为大家带来一篇html5标签嵌套规则详解【必看】。小编觉得挺不错的,现在分享给大家,也给大家做个参考

前面的话
  在html5中,<a>元素的子元素可以是块级元素,这在以前是被认为不符合规则的。本文将详细介绍html5的标签嵌套规则

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

分为元数据型(metadata content)、区块型(sectioning content)、标题型(heading content)、文档流型(flow content)、语句型(phrasing content)、内嵌型(embedded content)、交互型(interactive content)。元素不属于任何一个类别,被称为穿透的;元素可能属于不止一个类别,称为混合的。

 元数据元素(metadata content)是可以被用于说明其他内容的表现或行为,或者在当前文档和其他文档之间建立联系的元素

立即学习前端免费学习笔记(深入)”;

base link meta noscript script style template title
登录后复制

 流元素(flow content)是在应用程序和文档的主体部分中使用的大部分元素

a abbr address area(如果它是map元素的子元素) article aside audio b bdi bdo blockquote br button canvas cite code data datalist del dfn div dl em embed fieldset figure footer form h1 h2 h3 h4 h5 h6 header hr i iframe img input ins kbd keygen label main map mark math meter nav noscript object ol output p pre progress q ruby s samp script section select small span strong sub sup svg table template textarea time u ul var video wbr text
登录后复制

区块型元素(sectioning content)是用于定义标题及页脚范围的元素

article aside nav section
  标题型元素(heading content)定义一个区块/章节的标题

h1 h2 h3 h4 h5 h6
  语句型元素(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>
  【1.7】子元素是一个<figcaption>元素,紧跟着流元素

<figure>
  【1.8】子元素是一个<legend>元素,紧跟着流元素

<filedset>
 

【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】子元素是transparent(以它的父元素允许的子元素为准)

<ins>、<del>、<map>
  【3.1】子元素是transparent(以它的父元素允许的子元素为准),但不包括交互型元素(interactive content)

<a>
  【3.2】子元素可以没有、可以是<param>元素,也可以是transparent(以它的父元素允许的子元素为准)

<object>
 

【4】无子元素

慧中标AI标书
慧中标AI标书

慧中标AI标书是一款AI智能辅助写标书工具。

慧中标AI标书 120
查看详情 慧中标AI标书

<hr>、<br>、<wbr>、<img>、<embed>、<param>、<source>、<track>、<area>、<col>、<keygen>
  【4.1】子元素可以没有、可以是<li>元素,也可以是<script>、<template>元素

<ol>、<ul>
  【4.2】子元素可以没有、可以是<dt>和<dd>元素,也可以是<script>、<template>元素

<dl>
  【4.3】子元素可以没有,可以是<option>、<optgroup>,也可以是<script>、<template>元素

<select>
  【4.4】子元素可以没有,可以是<option>,也可以是<script>、<template>元素

<optgroup>
  【4.5】子元素可以没有、可以是<option>元素

<datalist>
  【4.6】子元素可以没有、也可以是<track>元素,也可以是<source>元素

<audio>、<video>
  【4.7】子元素可以没有,也可以是<col>、<template>元素

<colgroup>
  【4.8】子元素可以没有,可以是<tr>,也可以是<script>、<template>元素

<tbody>、<thead>、<tfoot>
  【4.9】子元素可以没有,可以是<tr>、<th>,也可以是<script>、<template>元素

<tr>
 

【5】子元素是<caption>、<colgroup>、<thead>、<tfoot>、<tbody>,也可以是<script>、<template>元素

<table>
 

【6】子元素是文本内容

<textarea>
  【6.1】子元素可以没有,也可以是文本内容

<option>

总结
  关于每个元素的详细嵌套规则,上部分已经详细介绍。这部分主要对常用标签的嵌套规则进行总结

  [注意]将鼠标移动到深灰色背景的文字上,title将显示该元素所包含的标签

【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>不可嵌套<table>

【7】<dt>、<th>不可嵌套<header>、<footer>、区块型元素(sectioning content)、标题型元素(heading content)

【相关推荐】

1. 免费h5在线视频教程

2. HTML5 完整版手册

3. HTML5之Video标签详解

4. HTML5不支持标签和新增标签详解

以上就是解析HTML5中的标签嵌套规则的详细内容,更多请关注php中文网其它相关文章!

相关标签:
HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号