在Firefox和Safari上,以下代码仅显示第一个iframe
<iframe src="http://www.bing.com"/>
<iframe src="http://www.tsr.ch"/>而添加结束标记则解决了这个问题
<iframe src="http://www.bing.com"></iframe>
<iframe src="http://www.tsr.ch"></iframe>我不明白为什么它不能工作。当使用DOMParser解析第二个示例时,它无论如何都会转换为自闭合iframe。
小提琴在这里:http://jsfiddle.net/hLcukz6p/
发布于 2014-12-18 19:43:17
因为iframe元素不是一个自关闭元素。您正在使用的火狐和Safari版本最终将/>视为只是>,并假定它包含在iframe中之后的所有内容。
如果我们尝试通过W3C's validator传递您给出的代码,我们将看到以下错误:
错误:在非void HTML元素上使用了自关闭语法(
/>)。忽略斜杠并将其视为开始标记。
如果你用浏览器的元素检查器检查你的文档,你会看到发生了什么。
我正在使用的Chrome将无效的<iframe ... />转换为<iframe ...></iframe>

https://stackoverflow.com/questions/27545757
复制相似问题