gpt4 book ai didi

ruby-on-rails - Rails 3.1 在 View 中使用 iframe 会使布局停止渲染

转载 作者:行者123 更新时间:2023-12-03 18:27:12 25 4
gpt4 key购买 nike

所以我有一个基本的布局文件:

<!DOCTYPE html>
<html dir="ltr" lang="en-US">
<head>
<%= stylesheet_link_tag "logged_out" %>
<%= javascript_include_tag "application" %>
<%= stylesheet_link_tag "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/ui-lightness/jquery-ui.css" %>
</head>
<body>
<!-- header stuff here -->
<%= yield %>
<!-- footer stuff here -->
</body>
</html>

使用任何普通的 html 都可以。但是,如果我将这样的 iframe 添加到 View 中:
<iframe id="form" height="480" width="320" src="/mobile_preview/preview"/>

当我渲染页面时,所有内容都会渲染到 iframe,但是 yield 之后的页脚内容不会渲染。有没有人遇到过这个?

编辑:正如其中一个答案指出的那样(谢谢!),我在最初的问题中的 yield 声明是错误的。我的代码中的 yield 语句是正确的,但在转移到 stackoverflow 时是一个错字。

注意:如果您尝试复制 iframe,则使用 jquery mobile。

最佳答案

问题是你如何包含 <iframe> .你认为你包含了自闭合标签,它就在那里结束。但是您不会将您的页面作为 XML 发送,并且 HTML 没有自关闭标签的概念,它最终只是垃圾。所以你的:

<iframe id="form" height="480" width="320" src="/mobile_preview/preview"/>

真正解释为:
<iframe id="form" height="480" width="320" src="/mobile_preview/preview">

页面的其余部分被解释为被忽略的内容 <iframe>标签。这就是为什么您不应该在 HTML 文档中使用自关闭标签的原因 - 它们并没有像您认为的那样工作。

将其更改为:
<iframe id="form" height="480" width="320" src="/mobile_preview/preview"></iframe>

如果您使用 Firebug 或 Chrome Inspector 查看解析的 DOM 树,您就可以找到它。

作为奖励:它与 Rails 无关,服务器像以前一样返回响应,您可以在日志中看到它。这只是浏览器如何解释您的标记的问题。

关于ruby-on-rails - Rails 3.1 在 View 中使用 iframe 会使布局停止渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7375325/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com