2011-05-02 84 views
5

可能重复:
Is there a way to have content from an IFRAME overflow onto the parent frame?使元素溢流出的iframe

这里是我的问题: 我有两种类型的对话框的哪个(应该)看起来和用起来一样。一个将内容直接加载到页面中,另一个使用iframe加载内容。我有一个元素需要从iframe中溢出并完全显示在页面上。这个元素基本上是一个使用list(ul/li)构建的增强select元素。我如何使这个行为作为一个选择会在iframe中溢出iframe?

首先想到的是将选择/列表放在iframe之外并将其放置在正确的位置,尽管这需要iframe和父级之间的通信超过我的意愿。理想情况下,我想要一个解决方案,保持iframe中的选择/列表。

+6

由于iframe基本上是嵌在* another *页面中的网页,我认为这是不可能的。这就像是问如何让元素溢出浏览器窗口......至少,我认为是这样。我有兴趣听到其他人的看法,但... – 2011-05-02 22:33:40

+0

立即想到;不可能。 – 2011-05-02 22:36:15

回答

12

你不能。

是一个包含单独的,不同的浏览器窗口(基本上)的元素。

从字面上看,它就像一扇窗户:当你从窗户向外看时,外面的景色停在窗户框架上。

这与内部的内容形成对比,例如可滚动的<div>,它更像是一块手持玻璃板,上面涂有一些东西,还有一些东西粘在了胶带上并悬挂在边缘。

-1

想象一下,该文件是一张图片。

想象一下,iFrame是一个真实的框架。

你可以让图片出来的框架?号码

这里完全一样。

最好的办法是找出避免iFrame的方法。

此外,iFrames是不好的做法。

+6

这不是'iframes'不好的做法,尽管它们通常被认为是不好的做法。另外,为了屈服于21世纪的营销宣传而欢呼,它宣称任何开始“我”必须有以下字母大写...:P – 2011-05-02 22:43:56

+0

@Tomalak我没有明白你的意思。 ;) – Kayla 2011-05-02 22:45:34

+0

iThink你做=) – 2011-05-02 22:46:43

1

您可以使用php将页面加载到当前页面。很多人认为iframe不好的做法。这只需要几行PHP来加载页面元素,而不是一个有时较慢的iframe。

这里是你会怎么做....

<?php 
    include('file.html'); 
?> 

你会把这条线的,并包含在页面上,就像你用iframe中。您可以使用ajax/js无缝地更改html的内容,甚至可以根据需要从服务器加载内容。

+0

由php我认为你的意思是ajax。 Iframes提供了一个主要好处,即隔离。当你运行一个载入页面时,这是一个非常重要的好处。 – aepheus 2011-05-02 22:42:25

+0

然后,通过相同的隔离原则,隔离的iframe如何与其父项进行可视化交互?使用iframe是不可能的。 – Blender 2011-05-02 22:43:36

+1

@aepheus号由php,他的意思是[php](http://php.net)。 – Kayla 2011-05-02 22:44:31