Как мне избежать CLS (кумулятивного сдвига макета) при включенном Google AdSense «Разрешить Google оптимизировать размер ваших мобильных объявлений»?

Я не использую адаптивную рекламу, потому что хочу получить более высокую оценку Web Vitals.

Однако с Let Google optimize the size of your mobile ads проверено, похоже, Google все равно изменит / обновит размер своего объявления в min-height определенный контейнер, изменив свойство CSS на это:

      height: auto !important;
min-height: 0px !important;

Есть ли способ исправить это?

Я не хочу снимать галочку, потому что упадет доход.

2 ответа

Вот несколько отличных ссылок о том, как уменьшить CLS с помощью Google AdSense ( ref1 и ref2):

Лучший способ - добавить значение минимальной высоты в оболочку вокруг каждого из ваших рекламных блоков. Однако использования класса для нацеливания на это свойство CSS недостаточно - вам нужно будет использовать идентификатор для нацеливания на эту оболочку. По неизвестной причине Javascript Google AdSense удаляет директивы min-height для всех родительских объектов. Однако они не удаляют это, если вы используете идентификатор для таргетинга CSS .

Итак, уловка состоит в том, чтобы добавить id чтобы настроить таргетинг на CSS вашего контейнера, и это должно снизить ваш CLS до 0!

Минимальная высота в div с идентификатором [см. ответ № 1 или здесь: https://mediarealm.com.au/articles/google-adsense-reducing-cls-cumulative-layout-shift/] помогает... но все еще испытывает трудности с адаптивными макетами в Bootstrap.

Если вы используете автоматическую рекламу AdSense, AdSense будет вставлять рекламу там, где, по его мнению, лучше всего, а это означает изменение высоты этих элементов:

      <div class="row">  

на что AdSense меняется на

      <div class="row" style="height: auto !important;">

и pagespeed также жалуется на CLS с

      <div class="alert">

Возможно, в Bootstrap можно применить подход с уникальным идентификатором к блокам строк и предупреждений (без установки минимальной высоты, поскольку на большинстве веб-сайтов все страницы разные), но даже если это сработает, это снизит доходы от рекламы. Кажется, это «Уловка-22»: у вас могут быть отличные основные показатели ИЛИ отличная оптимизация AdSense, но не то и другое. AdSense должен найти решение, предположительно путем прогнозирования оптимальных позиций, макетов и размеров объявлений до рендеринга страницы, чтобы не было CLS.

Другие вопросы по тегам