3

我们使用 Adsense 的“自动广告”并且通常对它非常满意。不幸的是,我们的移动 (!) 网站上的 CLS(累积布局转换)存在问题。我们现在已经对此进行了测试,问题肯定是由自动广告触发的。经过进一步测试,我们能够确定触发 CLS 的正是页面头部区域中的粘性锚定广告。重要提示:加载页面时不会发生移位,而是在锚广告出现在顶部后向下和向上滚动时发生。此时 Adsense 为我们页面上的所有元素添加一些样式属性,例如。“高度:自动!重要;” 有没有人也有这个问题?我们能做什么?我们不想继续没有粘性锚广告。重要提示:问题仅限移动设备!Google Adsense 是否正在为此努力?谢谢!

4

2 回答 2

0

由于没有真正的方法来“强制”adsense 中自动广告的大小

设置 Adsense 自适应广告单元的最大高度

对我来说,我发现谷歌总是在手机上提供 200px 高的广告,而在平板电脑和台式机上提供 280px 的广告,所以我在折叠上方的响应式布局中“保留”了这个空间

使用此处描述的 CSS https://support.google.com/adsense/answer/9183363?hl=de这里https://support.google.com/adsense/answer/9467650?hl=en-GB和这里https: //support.google.com/adsense/forum/AAAAKDuOfxQTiihLH_gMnw/?hl=en&gpf=%23!topic%2Fadsense%2FTiihLH_gMnw

 .werbung { height: 200px; }
 @media (min-width:500px) { .werbung { height: 280px; } }
 @media (min-width:800px) { .werbung { height: 280px; } }

例子:

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-#####"
 crossorigin="anonymous"></script>

<div class="werbung">

<ins class="adsbygoogle werbung"
 style="display:block"
 data-ad-client="ca-pub-#####"
 data-ad-slot="#####"
 data-ad-format="auto"></ins>
<script>
(adsbygoogle = window.adsbygoogle || []).push({});
</script>

</div>
于 2021-07-08T06:22:28.370 回答
0

由于谷歌广告(尤其是顶部锚点)在向下滚动页面后对 BODY 的 PADDING 进行动画处理,广告出现,然后向上滚动,无法避免 CLS,只能创建固定

<style>
   body {
     padding: 120px 0px 0px !important;
   }
</style>

因此,一旦广告将其“样式”与内边距附加到正文并开始更改它,由于我们样式中的“!important”标签,什么都不会发生……您可以制作一个 IF 语句,仅当您的页面是显示在移动设备上(不确定这也发生在广泛的 PC 锚上,必须对其进行测试,但我看到我的 CLS 在 PC 上也出现故障,所以可能是这样)

于 2021-08-10T12:30:22.230 回答