ie7和google adsense绝对定位

时间:2009-07-07 15:20:56

标签: html css internet-explorer-7

我在ie7

中显示adsense广告时遇到问题

google adsense添加了一个iframe来展示ID为google_ads_frame1位置:绝对的广告问题是这个绝对位置会让广告保持在那里,即使页面大小发生变化(在ajax中)

所以我怎么能强迫它有位置:相对,我尝试将它包装在div中并应用每个可能的属性,如位置,显示,将整个内容包装在表格中,浮动,缩放,高度和宽度。

我也尝试在adsense下添加一个css

    <!--[if IE7 ]>
    <style type="text/css">
    #google_ads_frame1 {
       position:relative;
    }
    </style>
    <![endif]-->
可以请任何人帮助我,这件事让我发疯了......

3 个答案:

答案 0 :(得分:1)

只有在页面调整大小时广告才会被定位,所以每当一个导致页面大小发生变化的函数我就会再添加一个javascript。

var googleAds = document.getElementById('googleAds'); 
googleAds.style.paddingTop= '1px';
googleAds.style.paddingTop= '0';

你有更好的解决方案请告诉我

答案 1 :(得分:0)

你应该能够用一个div设置iframe来包装iframe。页面上的元素是用ajax设置的位置更改大小的位置:绝对或浮动,因为这可能会导致问题。

约什

答案 2 :(得分:0)

我遇到了同样的问题,我通过删除包装div上的'background-color'来“修复”这个问题。不要问我为什么,这必须是有史以来最奇怪的IE漏洞:)

包装div几乎涵盖了页面上的所有内容,与包含AdSense横幅的表格单元格无关,我完全不知道为什么这种背景颜色对横幅的定位有任何影响。

我通过逐页剥离页面找到了这个“解决方案”。几乎所有的HTML都消失了,但问题仍然存在。我删除了CSS文件,之后横幅表现正常。然后开始剥离完整的CSS,直到找到(似乎)导致问题的那一行。

对此进行正确的测试用例仍然在我的列表中的某个地方,但还没有这样做。同样不确定这是一个通用的解决方案。现在的主要建议:如果你看到这个问题,删除所有的CSS,看看是否能解决问题,如果它确实找出了CSS的哪个部分似乎负责并摆脱它:)