Cumulative Layout Shift (CLS) — показатель, влияющий на опыт взаимодействия пользователя с веб-страницей и отражающий ее визуальную стабильность. Он показывает, насколько сильно элементы страницы, такие как картинки, тексты или кнопки, смещаются во время ее загрузки. Другими словами, CLS оценивает, как неожиданное перемещение контента на экране влияет на пользователя.

Такие сдвиги могут ухудшить пользовательский опыт, особенно если посетитель уже начал взаимодействовать с страницей. Например, если он пытается нажать на кнопку, а она внезапно перемещается, и вместо нее нажимается другой элемент, это может вызвать не только неудобство, но и ошибки на сайте.

CLS — один из ключевых показателей Google Core Web Vitals (наряду с FID и LCP) и является важной частью оценки производительности веб-ресурсов. Его высокие значения могут негативно повлиять на SEO и ухудшить ранжирование сайта в поисковой выдаче, поэтому его оптимизация важна для улучшения взаимодействия пользователей с ресурсом и повышения его видимости в поисковых системах.

Причины сдвигов на странице

Как оптимизировать CLS

Причины сдвигов на странице

Элементы страницы могут смещаться по следующим причинам:

  • динамически загружаемый контент. Часто сдвиги происходят из-за того, что новые элементы добавляются на страницу асинхронно, когда она уже начала рендериться. Это могут быть рекламные блоки, изображения или виджеты;
  • отсутствие размеров для медиафайлов. Если изображения или видео загружаются без заранее определенных размеров, браузеру приходится перераспределять пространство на странице по мере их загрузки, что приводит к сдвигам контента;
  • шрифты. Некоторые веб-шрифты могут загрузиться медленнее стандартных, что приводит к тому, что браузер сначала отображает текст в одном стиле, а затем перерисовывает его с использованием загруженного шрифта, что тоже может вызвать смещение;
  • загрузка динамических объявлений. Баннеры, встроенные на страницу, могут динамически загружаться с сервера, что также приводит к изменению положения элементов;
  • анимации или переходы. Если анимация выполняется неаккуратно, это может повлиять на стабильность макета.

Как оптимизировать CLS

Для оптимизации CLS следуйте этим рекомендациям:

  • задавайте размеры для изображений и видео. Используйте атрибуты width и height в HTML-коде или CSS для того, чтобы резервировать пространство для изображений и видео до их полной загрузки. Это позволит браузеру заранее понять, сколько места должно занять медиа;
  • используйте резервирование места для рекламных блоков. Для динамических объявлений можно выделять фиксированные размеры или использовать плейсхолдеры, чтобы избежать внезапного появления рекламы и смещения контента;
  • предварительно загружайте шрифты. Используйте font-display swap для того, чтобы контент сначала рендерился с системными шрифтами, а затем заменялся на веб-шрифты без существенного сдвига макета;
  • минимизируйте использование анимаций. Если анимации все же необходимы, убедитесь, что они не вызывают значительных изменений в структуре страницы. Используйте те из них, которые не влияют на основные элементы контента;
  • загружайте контент асинхронно. Если необходимо загружать дополнительный контент динамически, старайтесь, чтобы он не влиял на основные элементы макета или отображался внизу страницы.

Вопросы-ответы

Как узнать CLS?

С помощью Google Search Console, Chrome User Experience Report, PageSpeed ​​Insights, Google Chrome Lighthouse, PR-CY.

От чего зависит CLS?

От того, какую зону охватывает сдвиг элементов и на какое расстояние они смещаются.

Какой CLS считается хорошим?

0.1 и меньше.

Эта статья и другие полезные ресурсы click.ru — после бесплатной регистрации

Вы получите доступ к функционалу экосистемы:

  • Все рекламные площадки в одном окне
  • Мастер маркировки любой рекламы
  • Профессиональные инструменты для решения рутинных задач (дашборды, защита от скликивания и многое другое)
  • Возврат до 18% на контекстную и таргетированную рекламу
  • Бесплатный доступ в платные маркетинговые сервисы
Эта статья и другие полезные ресурсы click.ru – после бесплатной регистрации