XHTML 的标签有许多:div、ul、li、dl、dt、dd、h1~h6、p、a、addressa、span、 strong……我们在运用这些标签搭建页面结构的时候,是可以将它们无限嵌套的,但是,嵌套也需要有一定规则,不能任由网站设计师的个人习惯胡乱嵌套——XHTML 必竟不是 XML。

  在 XHTML 的语言里,我们都知道:ul 标签包含着 li、dl 标签包含着 dt 和 dd——这些固定标签的嵌套规则十分明确。但是,还有许多标签是独立的,它们没有被捆绑在一起,比如 h1、div、p……那么这些标签的嵌套规则到底是怎样的?今天就来说说这个话题。

  提到 XHTML 标签的嵌套规则,我们先得知道有这么二类 XHTML 标签,一类叫做 块级元素(block),一类叫做 内嵌元素(inline,也有许多人叫它:内联、行内、线级等)。

  块级元素 和 内嵌元素 的划分标准很简单,请把下面二行代码放进 body 标签里:

<div style=”border: 1px solid red;”>div1</div>
<div style=”border: 1px solid red;”>div1</div>

浏览器的呈现效果:

div1
div1

  页面呈现的这二个 div 占据了二行空间,除非让它们浮动(float)或是进行其他设置,否则谁都不挨着谁,它们都很霸道的占领属于自己的那一行空间——但凡看到某个标签有此现象,你就可以叫它:块级元素(block)

  再把下面二行代码也放进 body 标签里:

<span style=”border: 1px solid red;”>span1</span>
<span style=”border: 1px solid red;”>span2</span>

  浏览器的呈现效果:

span1 span1

  这一次,两个 span 并列在一行,它们之间睦邻友好、亲切和谐……像这样的标签行为,我们可以称它们为:内嵌元素(inline);

块级元素和内嵌元素的区别:

  · 块级元素 一般用来搭建网站架构、布局、承载内容……像这些大体力活都属于块级元素的,它包括以下这些标签:

div、ul、li、dl、dt、dd、h1~h6、p、address……

  · 内嵌元素 一般用在网站内容之中的某些细节或部位,用以“强调、区分样式、上标、下标、锚点”等等,下面这些标签都属于内嵌元素:

a、span、strong、sub、sup、img……

  · 块元素 和 内嵌元素 是可以互相转换的,转换的代码如下:

display: block; /* 转成块元素 */

display: inline; /* 转成内嵌元素 */

  · 块元素 和 内嵌元素 对于 CSS 的调用规则是不一样的(这篇文章讨论的是标签嵌套,所以对这个知识点不展开说明)。

  简单认识了块元素和内嵌元素以后,下面就可以罗列 XHTML 标签的嵌套规则了:

  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> —— 错

  先总结到这里,以后如有新的发现,随时更新。

转载于:https://www.cnblogs.com/newmin/archive/2011/02/18/1958059.html

XHTML标签的嵌套规则相关推荐

  1. html标签的嵌套规则

    一.HTML 标签包括 块级元素(block).内嵌元素(inline) 1.块级元素 一般用来搭建网站架构.布局.承载内容--它包括以下这些标签: address.blockquote.center ...

  2. 前端开发 表格的补充 注释 标签的嵌套规则 0228

    表头标签 列分组标签 最终实现,两个标签代替了原有的七个标签 表格体标签 表格的完整结构 浏览器会自动生成表格体标签 代码的注释 标签的嵌套规则

  3. html标签的嵌套规则有哪些,html 标签的嵌套规则

    如何在 Visual Studio 中使用 Git 同步代码到 CodePlex 开源社区不管在国内还是国外都很火热,微软也曾因为没有开源而倍受指责,但是随着 .Net framework.ASP.N ...

  4. (X)HTML嵌套规则

    本文整理于互联网~ 简单认识了块元素和内嵌元素以后,下面就可以罗列 XHTML 标签的嵌套规则了: 1. 块元素可以包含内联元素或某些块元素,但内联元素却不能包含块元素,它只能包含其它的内联元素: & ...

  5. html标签可以嵌套吗,HTML标签的嵌套

    随着时间的推移,我们学习html的基础知识有了大概的了解.而我发现,平时在写html文档的时候,发现不太清楚标签之间的嵌套规则,经常是想到什么标签就用那些,然而发现有时的标签嵌套却是错误的.通过网上找 ...

  6. 一天搞定HTML----标签的嵌套规则06

    标签的嵌套规则 代码演示 <!DOCTYPE html> <html><head><meta charset="UTF-8">< ...

  7. html元素嵌套与并列,HTML的元素嵌套规则

    一.HTML 标签包括 块级元素(block).内嵌元素(inline) 1.块级元素 一般用来搭建网站架构.布局.承载内容--它包括以下这些标签: address.blockquote.center ...

  8. HTML的奇葩嵌套规则

    一.HTML 标签包括 块级元素(block).内嵌元素(inline) 1.块级元素 一般用来搭建网站架构.布局.承载内容--它包括以下这些标签: address.blockquote.center ...

  9. html5哪个标签首字母大写,HTML5中标签和常用规则有哪些?html5标签以及规则的介绍...

    这篇文章给大家介绍的内容是关于HTML5中标签和常用规则有哪些?html5标签以及规则的介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1. 命名规则 [强制]class:必须单 ...

最新文章

  1. css html 双面打印_从 Linux 命令行进行打印 | Linux 中国
  2. Web前端笔记-two.js实现坐标定位(动画效果非瞬移定位)
  3. HDFS的NameNode内存解析
  4. 基于FPGA实现Camera Link接口
  5. 阿里巴巴牵手上汽集团:成立汽车科技公司
  6. android学习1:初识Activity
  7. string equals java_Java equals比较方法(Java StringEquals)
  8. SetWindowsHookEx 全局钩子
  9. 计算机系统概论备考,《计算机系统导论》复习题3.doc
  10. Word文档怎样翻译?Word文档翻译方法大分享
  11. linux下的摄像头驱动怎么安装方法,linux下良田摄像头驱动怎么装?
  12. R语言学习笔记:使用reshape2包实现整合与重构
  13. 在pc端上操作手机工具分享
  14. 湖南评副教授职称计算机,2019年职称评审,湖南省高校教师需关注这些问题!...
  15. Using R Language to Plot Diagrams
  16. IDEA 修改远程仓库地址
  17. TeXworks 高效使用指南
  18. sage X3 ERP如何帮助企业满足FDA的合规性要求
  19. 2021全国大学生数学建模竞赛C题思路
  20. APP金刚区的个人理解

热门文章

  1. linux捕获其他进程信号,linux进程如何捕获信号
  2. codeblocks怎么用已封装的类_mitoq 在新西兰用着怎么样?已入手mitoq,我的感受
  3. 图论--2-SAT--详解
  4. 图论--二分图最大匹配(匈牙利算法)--模板
  5. redis缓存穿透、缓存雪崩、缓存击穿、并发竞争
  6. [机器学习] 分类 --- Support Vector Machine (SVM)
  7. Docker: vmware企业级docker镜像私服--Harbor的搭建
  8. Python模块: 文件和目录os+shutil
  9. 这一两天要做的事--关于Altera FPGA首先要搞清楚的几个问题 以及解答
  10. TensorFlow:实战Google深度学习框架(五)图像识别与卷积神经网络