IFRAME 之后的行不可见
Posted
技术标签:
【中文标题】IFRAME 之后的行不可见【英文标题】:line after IFRAME is not visible 【发布时间】:2010-10-29 17:29:41 【问题描述】:IFRAME 之后的行在 IE 和 FF 中均不可见。参考下面的代码,让我知道我是否做错了什么。
<html>
<body>
line before iframe <br />
<iframe src="about:blank" />
<br /> line after iframe
</body>
</html>
【问题讨论】:
【参考方案1】:我正在通过 iFrame 标签将 Facebook Connect 集成到我的网页中,如下所示:
<iframe src="..." style="..."></iframe>
它适用于除 IE8 以外的所有浏览器。
现在我发现,你必须提供一个文本作为标签的内容。然后就完美运行了!
例子:
<iframe src="..." style="...">Your browser does not support iFrames</iframe>
或者我现在使用的是以下(只显示一个空格):
解决方案:
<iframe src="..." style="..."> </iframe>
【讨论】:
在 IE 11(11.165.17134.0,更新版本 11.0.75)中具有相同的功能。难以置信!【参考方案2】:您需要关闭 iframe 标记。否则,当不支持 iframe 时,其后出现的内容将被视为“要显示的内容”。
(顺便说一句,我认为如果您使用 XHTML 编写 那么 IE 会将其视为 HTML。IE 不会将 XHTML 理解为 XHTML。它会将其理解为 HTML。)
【讨论】:
是的,在我放置单独的结束标签后它可以工作。我认为自我结束和单独的结束标签是相同的,我相信它适用于所有元素。为什么它不能与 IFRAME 一起使用,是否有任何 W3C 标准/文档? 换句话说,您不能使用标签的自闭合版本。我今天自己打了这个。很高兴我找到了这个问题。【参考方案3】:使用单独的关闭标签创建 iframe:
<html>
<body>
line before iframe <br />
<iframe src="about:blank"></iframe>
<br /> line after iframe
</body>
</html>
当你使用它们的紧凑形式时,有些标签(我想到了 iframe 和 textarea)不喜欢它。
【讨论】:
是的,它有效。这背后的原因是什么?有这方面的 W3C 标准吗?以上是关于IFRAME 之后的行不可见的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 jQuery 检查 IFrame 在页面上是不是可见
如何使用 javascript 或 JQuery 从不可见的 iframe 中获取隐藏字段值