html中标签嵌套的问题如何解决
程序员文章站
2022-03-16 22:52:17
...
本篇文章给大家带来的内容是关于html中标签嵌套的问题如何解决,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
问题描述
期待样式:
单一精确度显示:“精确度等级:xxxxx”
非单一精确度显示:“精确度等级:xxxxx ~ xxxxx”
错误实现
下面是错误的示范,仅供说明使用:
<p ng-repeat="parameter in object.parameterCalibrateAbilitySet"> <p ng-if="parameter.parameterCategory.singleAccuracyOrNot"> 准确度等级:{{ parameter.accuracy.minAccuracyValue + parameter.accuracy.minAccuracyUnit.name }} </p> <p ng-if="!parameter.parameterCategory.singleAccuracyOrNot"> 准确度等级:{{ parameter.accuracy.minAccuracyValue + parameter.accuracy.minAccuracyUnit.name + ' ~ ' + parameter.accuracy.maxAccuracyValue + parameter.accuracy.maxAccuracyUnit.name }} </p> </p>
看代码感觉没问题,但是渲染出来是这么个东西,没有数据。
原因分析
打开控制台,看我们的DOM
结构,发现我们原来的嵌套p
标签被渲染为3个独立的p
标签。
所以看结构,我们的准确度等级不在ng-repeat
修饰的p
标签中,所以无法获取数据,就会显示错误。
渲染猜想
以下均为个人猜想,如果错误欢迎批评指正。
假如我们写了一个嵌套的p
标签,因p
标签不能嵌套块级元素。
所以浏览器渲染到第二行时,发现了一个块级元素,会认为第一行的p
标签已经完结了,所以浏览器认为是开发者少写了一个p
的结束标签。
同理,最后,浏览器会认为开发者少写了一个p
的开始标签。
所以最后会呈现出如上图所示的DOM
结构。
总结
归根结底,就是p
标签中不能嵌套块级元素。
内联元素不能嵌套块级元素,p
标签中不能嵌套块级元素。这些我们可能都或多或少听说过,但是我们只是把它当做一种规范。
相关文章推荐:
以上就是html中标签嵌套的问题如何解决的详细内容,更多请关注其它相关文章!
上一篇: 前端和微信小程序的未来与发展
推荐阅读
-
定制网站建设需要解决的问题 如何在创新中获得用户认可
-
Bootstrap开发中Tab标签页切换图表显示问题的解决方法
-
如何解决hover在ie6中的兼容性问题
-
解决Laravel blade模板转义html标签的问题
-
解决Python中list里的中文输出到html模板里的问题
-
用v-html解决Vue.js渲染中html标签不被解析的问题
-
关于HTML5 Placeholder新标签低版本浏览器下不兼容的问题分析及解决办法
-
IE中iframe标签显示在DIV之上的问题解决方案
-
html5\CSS3有哪些新特性、移除了哪些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分HTML和HTML5?
-
javascript中引用传递的问题如何解决