我一直在玩html5,我注意到有时页面显示我的html在dom(通过firebug查看)中的显示方式与我在html文件中实际显示的不同。结果是一个元素以不同的方式被复制多次。我只在嵌套元素上注意到这一点。
例如:
<a href="#" class="block top-middle">
<h5 class="title-top">TITLE</h5>
<img src=""path/to/img.png" alt="TITLE" />
</a><!-- .top-middle -->
偶尔显示为:
<a class="block top-middle" href="#"> </a>
<h5 class="title top">
<a class="block top-middle" _moz-rs-heading="" href="#">TITLE/a>
</h5>
<a class="block top-middle" href="#">
<img alt="TITLE" src="path/to/img.png">
</a>
我不确定解决方案是什么,但我想知道是否有其他人经历过这样的故障。我已经筛选了我的每一段代码,我找不到任何破坏的东西,它发生的页面验证没有任何问题。这特别令人沮丧,因为它只会偶尔发生一次。
谢谢!
* *也编辑,我知道使用像这样的锚标签是无效的但是据我所知,我已经读过关于html5的内容,它是有效的包装内容锚*
答案 0 :(得分:3)
浏览器/渲染引擎是在HTML 5存在之前制作的,因此它遵循以下规则:内联元素的锚点不能包含块级别的h5。
这很有道理。除了等待并看看渲染引擎是否采用允许锚点嵌套块级别(例如h5
s)的HTML 5规则之外,我认为你真的不能做任何事情。
编辑:我假设你使用的是HTML 5 Doctype,虽然它可能没什么影响。
编辑#2:虽然我个人认为它不应该是bug。解决这个问题的方法似乎是将h5
包装在div中。