如何仅在移动设备上显示自适应广告

时间:2015-01-28 00:52:29

标签: css mobile desktop adsense

我正在寻找一种正确的实施方法,以便在移动设备和桌面设备上显示/隐藏我的adsense广告。

现在我正在使用当前的方法,它给我们2个控制台错误。

目前的方法是:

我们使用2个类“mobileShow”和“mobileno”来相应地将广告标记到我们想要显示的位置。

因此,如果我们希望在手机上显示自适应的AdSense代码,我们会使用mobileshow,如果我们想要隐藏移动设备中的大矩形广告,我们会使用mobileno。

我们使用的代码如下:

.mobileShow {display: none;}
.mobileShow {display: inline;}
   @media only screen
   and (min-device-width : 320px)
   and (max-device-width : 480px)

.mobileno{display:none;}
   @media (max-width: 767px)

据我们所知,google adsense政策允许display:none,如果用于实现响应式布局等用途。

我们的问题是我们在chrome开发控制台中收到以下错误2次:

2 x 未捕获错误:找不到宽度为= 0px且data-ad-format = auto adsbygoogle.js的容器的响应大小:41

我们已经多次测试过,我们知道上面的代码有问题。

我们正在寻找一种方法来实现当前的“解决方案”而没有错误。

如果有人帮助我们,我们将非常感激。

3 个答案:

答案 0 :(得分:0)

我对完全自动广告尺寸的结果也不满意,经过拆分测试后,我发现为响应式广告设置特定尺寸更有帮助而不会降低性能。

AdSense举了一个例子,我只是用你的数据调整它。

<style type="text/css">
.adslot_1 { display: none; }
@media (min-width:320px) { .adslot_1 { width: 320px; height: 50px; } }
@media (min-width:480px) { .adslot_1 { display: none; } }
</style>
<ins class="adsbygoogle adslot_1"
    style="display:inline-block;"
    data-ad-client="ca-pub-1234"
    data-ad-slot="5678"></ins>
<script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
<script>(adsbygoogle = window.adsbygoogle || []).push({});</script>

答案 1 :(得分:0)

这可能是未来读者的有用信息:

当我在当前网站上禁用AdBlock Plus 时,

Cannot find a responsive size for a container of width=0px and data-ad-format=auto是我从自适应AdSense广告中获得的错误,但无处不在

我一检查&#34;禁用无处不在&#34;,AdSense错误就会停止显示,并且有针对性的AdSense广告正确显示。

答案 2 :(得分:0)

我认为您的代码可能是正确的,但可能需要进行一些更改。 通过改变

and (min-device-width : 320px)

and (max-device-width : 480px)

and (min-width : 320px)
and (max-width : 480px)