首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >HTML嵌套规则

HTML嵌套规则

作者头像
PM吃瓜
发布2019-08-12 14:46:09
1.7K0
发布2019-08-12 14:46:09
举报
文章被收录于专栏:PM吃瓜(公众号)PM吃瓜(公众号)

虽然我们可以嵌套标签,但是为了提高浏览器的渲染效率,我们应该尽少的嵌套标签,扁平化。

众所周知,HTML标签有两类:

  1. 块级元素 div、h1~h6、address、blockquote、center、dir、dl、dt、dd、fieldset、form、hr、isindex、menu、noframes、noscript、ol、p、pre、table、ul ... 特点:总是在新行上开始,高度、行高以及顶和底边距都可控制,宽度缺省是它的容器的100%,除非设定一个宽度 功能:主要用来搭建网站架构、页面布局、承载内容
  2. 行内元素 span、a、abbr、acronym、b、bdo、big、br、cite、code、dfn、em、font、i、img、input、kbd、label、q、s、samp、select、small、strike、strong、sub、sup、textarea、tt、u、var ... 特点:和其他元素都在一行上,高、行高及顶和底边距不可改变,宽度就是它的文字或图片的宽度,不可改变 功能:用于加强内容显示,控制细节,例如:加粗、斜体等等

嵌套也有规则,不能随意的嵌套。有些标签是固定的嵌套规则,比如ul包含li、ol包含li、dl包含dt和dd等等。还有很多是独立的标签,我们如何来使用它编写更优秀的页面,下面就说说

  1. 块级元素与块级元素平级、内嵌元素与内嵌元素平级 <div><span></span><p></p></div> //span是行内元素,p是块级元素,所以这个是错误的嵌套 <div><span></span><a></a></div> //对的
  2. 块元素可以包含内联元素或某些块元素,但内联元素不能包含块元素,它只能包含其它的内联元素 <div><span></span></div> <span><span></span></span>
  3. 有几个特殊的块级元素只能包含内嵌元素,不能再包含块级元素 h1、h2、h3、h4、h5、h6、p、dt
  4. 块级元素不能放在标签p里面

嵌套错误可能引起的问题

  • 元素开始与结束标签嵌套错误,页面可以在大部分浏览器被正常解析,IE9会出现解析错误
  • 在<p>元素内嵌入<div>等元素造成所有浏览器的解析错误
  • 在<h1>~<h6>元素内嵌入<div>等元素所有浏览器可以解析正常
  • 在<a>元素内嵌入<a>元素会导致所有浏览器的解析错误(a也不可嵌套button,input等交互元素)
  • 在列表元素<li><dt><dd>等插入非列表兄弟元素会导致IE6\IE7的解析错误
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Tech爬虫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档