如何从内部html设置iframe样式

时间:2013-08-28 08:51:43

标签: html css iframe

我有以下代码行

<iframe src="http://www.google.com" name="google" style="Z-INDEX: 0; MARGIN-TOP: -1px; WIDTH: 100%; HEIGHT: 1070px">
    <html>
         <head></head>
         <body>
             <div>Some image is here</div>
         </body>
    </html>
</iframe>

问题是在IE7中看不到iframe。仅当我添加样式display: block;

时,iframe才可见

我没有权限修改样式顶部iframe,但我可以修改内部html。

如何从我的html页面设置顶级iframe的样式?

2 个答案:

答案 0 :(得分:1)

Iframe内容受同域政策的约束。如果它来自您的域名,您可以控制它,如果没有,您就被锁定了。这可以防止各种基于iframe的页面劫持。

考虑到您可以直接访问,请执行以下操作:

你需要JavaScript。它与在父页面中执行的操作相同,除非您必须在JavaScript命令前添加iframe的名称。

请记住,相同的原始政策适用,因此您只能对iframe来自您自己的服务器执行此操作。

我使用Prototype框架使其更容易:

frame1.$('mydiv').style.border='1px solid #000000'

frame1.$('mydiv').addClassName('withborder')

答案 1 :(得分:0)

试试这个。

<iframe id="f" width="200" height="200"></iframe>


----------
var s = document.getElementById('f');
s.contentDocument.write("welcome");