2012-04-05 55 views
1

这是我的情况,我有一个css 3列流体布局(终于掌握了圣杯,谢谢大家!),并在我的左栏我有一个谷歌的AdSense广告。对于那些熟悉这一点的人来说,他们在广告尺寸方面的灵活性不是很好,但我很好奇是否有办法根据列的宽度更改广告。目前这个专栏占20%,所以我想可能是一个很好的老式的“If - Else”声明可能会做到这一点,但我还没有得到它的工作。逻辑是,我们有两个广告,一个180像素宽(a)和一个280像素宽(b),所以如果该列大于280像素,那么它将显示广告b,如果不是则它将显示广告一个。有没有其他人做到这一点?谢谢!圣杯流体布局的Adsense灵活性?

回答

0

这里有几个注意事项。首先,你用css标记了这个问题。如果你只是想用css来隐藏广告,而你的逻辑已经确定不应该显示,那么这么做很微不足道,但这是一个糟糕的主意。首先,您将隐藏Google特别禁止的加载广告。接下来,您最终可能会隐藏首先加载的广告,因此您的网页上的点击次数最多。您不想留下显示价值较低的广告。

您需要做的是在页面加载处使用javascript 来确定视口宽度,然后选择要在您正在讨论的广告位中加载的广告代码。在尽可能多的浏览器中进行测试,因为您需要确保获得正确的视口宽度才能使此策略发挥作用。如果出于某种原因无法正常工作,请确保回退不会使灾难性布局崩溃。此方法的缺点是,如果用户在页面加载后更改视口大小,则广告将打破边界。您至少可以使用CSS来缓解这种边缘情况,隐藏或裁剪广告的父div(overflow: hidden;),以便更改视口大小不会破坏布局。