如何防止浏览器下载谷歌AdSense广告广告在移动与响应网站



通过媒体查询,我将div设置为包含AdSense代码的display:none。然而,我想展示另一个AdSense广告,它在另一个带有display:block的DiV中。

需要您的帮助来理解以下内容:display:none是否会阻止向谷歌发送广告请求或阻止其从谷歌下载广告?我的挑战是,我最后一次想展示的是第四个AdSense广告,根据AdSense政策,我不能展示4个广告。

div上的display:none不会阻止来自该广告单元的广告请求:

<div style="display:none">
  <ins class="adsbygoogle adslot_1" ... ></ins>
</div>

这违反了AdSense关于隐藏广告的政策:"随时隐藏广告单元(例如display:none),除非您正在实施响应广告单元。"

为了防止广告请求,我们需要在AdSense ins标签上应用display:none

<style type="text/css">
.adslot_1 { display: inline-block; width: 320px; height: 50px; }
@media (max-width: 400px) { .adslot_1 { display: none; } }
@media (min-width: 500px) { .adslot_1 { width: 468px; height: 60px; } }
@media (min-width: 800px) { .adslot_1 { width: 728px; height: 90px; } }
</style>
<ins class="adsbygoogle adslot_1"
  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>

这就是"隐藏广告单元"的高级功能。对于小于401px的视口,上面的示例将在ins标记中注入<!--No ad requested because of display:none on the adsbygoogle tag-->注释(而不是广告)。

我认为我的"如何‘移动’AdSense广告"JSFiddle的例子可能正是你想要的——"我想展示另一个在另一个带有display:block的DiV中的AdSense"。(移动垂直边框以查看广告"移动"。)

最新更新