作为我正在从事的一个项目的一部分,我需要在<iframe>中加载一个AdMeld广告(一个主要的广告网络)。由于复杂的跨浏览器限制,我不能直接调用add。
这是一个非常简单的页面,它加载了我们的一个广告位,带有轮换的广告创意:
http://troy.onespot.com/static/stack_overflow/4949/iframe.html
我可以整天加载这个页面,并且广告总是看起来像预期的那样--我在页面上包含的唯一样式是:
* {
margin: 0;
padding: 0;
}这将删除<body>元素上的所有页边距和填充,使广告与视口的左上角对齐。
这个页面更准确地模拟了我在项目中加载广告的方式:
http://troy.onespot.com/static/stack_overflow/4949/test.html
它包括一个加载前一个页面的<iframe>,以及上面用来删除页边距和填充的相同基本样式。通常,此页面的呈现输出看起来与第一个示例中的输出完全相同。
然而,在Internet Explorer6&7和Opera10(我到目前为止观察到的唯一浏览器)中,偶尔(大约每5-30次页面加载就有1次)在广告上方有一个额外的间隙:
http://skitch.com/troywarr/d4pbg/ad-example
由于这些浏览器有相对糟糕的开发工具-或者至少我不知道如何有效地使用它们-我还没有找到任何关于可能发生的事情的线索。似乎没有任何明显的模式,比如总是显示问题的特定广告创意,或者导致这种情况持续发生的导航方法。
是什么导致了这种情况,我能做些什么来防止它?我在显示广告的页面上尝试了其他样式,包括:
* {
position: fixed;
}虽然这似乎确实缓解了问题,但它也打破了一些广告创意的布局。我无法控制出现的创意,所以我可能不能依赖任何影响深远的风格,因为这样可能会破坏任何广告;我也无法预测广告创意中可能出现哪些元素来预防性地设计它们。
提前感谢您的帮助!
发布于 2011-01-17 14:31:45
在你的iFrame上试试这个:
<iframe src="iframe.html?sfgate_btf" frameborder="0" scrolling="no" width="300" height="250" marginheight="0" marginwidth="0" scrolling="no" hspace="0" vspace="0"></iframe>https://stackoverflow.com/questions/3886377
复制相似问题