我有一个网页,拥有一个iframe:Div有透明背景时有iframe吗?
<div style="position:absolute; width:80%; top:100px; left:10%; z-index:5;">
<iframe src="www.google.com" />
</div>
注意iframe的来源可以是来自另一个域,所以我不能在它更改HTML。
除此之外ifame我有一个菜单,并在底部的一些装饰图像:
<div id="menu" style="position:absolute; width:100%; top:0px; left:0px; z-index:100;">
...
</div>
<div id="footer" style="position:absolute; width:100%; bottom:0px; left:0px; z-index:0;">
...
</div>
正如你所看到的,我给z-index的每个格,所以应该按照这个顺序来显示:顶部的菜单,其后是带有iframe的div,最后是页脚图像。
我想要的是,iframe(和div拥有它)没有背景(透明bg颜色,如果你喜欢),所以它后面的背景和页脚图像将是可见的。请注意,我只想更改背景颜色;文字不得改变或不透明。
我设法去的背景图片,并改变它(使用jQuery):
if ($.browser.msie == false) {
$(document.getElementById("content").contentDocument.body).
css('background', "url('transparent.png')");
}
else {
$(document.getElementById("content").Document.body).
css('background', "url('transparent.png')");
}
它的工作原理马丽娟上的iframe,但保持它在某种程度上股利得到一个白色背景。
如果我将div的背景设置为'transparent.png'图片,它将不会改变;该div仍然会保存它的白色背景!
如果我用表替换div,iframe会在页脚图像后面(尽管它的z-index更大)。
所有我想要的只是看到页脚图像该iframe背后...
请帮帮忙,我很绝望...:(
非常感谢你,它有用finnaly! 关于你的问题,我确实想摆脱iframe中的背景色;我已经尝试在iframe上放置allowtransparency =“true”;不知何故,它不在IE8中工作。 我没有得到你写的关于IE6的东西; 'transparent.png'会对它起作用吗? 再次感谢! – 2009-10-30 21:53:27
它的基本要点是,alpha透明度在png中(像透明背景)不会在IE6中呈现,对此有一种破解,通常将它应用于仅限IE的条件样式表是个好主意。这里的一些信息:http://stackoverflow.com/questions/130161/ie6-issues-with-transparent-pngs 此外,如果PNG只是一个1x1透明图像,我会使用一个GIF,因为它doesn不会受到同样的限制。通常,在透明胶片中使用alpha透明胶片时,会使用更高级的透明度,例如渐变渐变。 – thismat 2009-11-02 14:12:42