Краткая справка

Класс
Свойства
will-change-autowill-change: auto;
will-change-scrollwill-change: scroll-position;
will-change-contentswill-change: contents;
will-change-transformwill-change: transform;

Основы использования

Оптимизация с помощью изменится

Используйте will-change-scroll, will-change-contents и will-change-transform, чтобы оптимизировать элемент, который, как ожидается, изменится в ближайшем будущем, указав браузеру подготовить необходимую анимацию до того, как она действительно начнется.

<div class="overflow-auto will-change-scroll">
  <!-- ... -->
</div>

Рекомендуется применять эти утилиты непосредственно перед изменением элемента, а затем удалять его вскоре после завершения с помощью will-change-auto.

Свойство will-change предназначено для использования в качестве последнего средства при работе с известными проблемами производительности. Избегайте слишком частого использования этих утилит или просто из-за проблем с производительностью, так как это может привести к снижению производительности страницы.


Применяя условно

Tailwind позволяет условно применять служебные классы в разных состояниях с помощью модификаторов вариантов. Например, используйте hover:will-change-scroll, чтобы применять утилиту will-change-scroll только при hover.

<div class="will-change-auto hover:will-change-scroll">
  <!-- ... -->
</div>

Полный список всех доступных модификаторов состояния смотрите в документации Наведение, фокус и другие состояния.

Контрольные точки и медиа-запросы

Вы также можете использовать модификаторы вариантов для таргетинга на медиа-запросы, такие как реагирующие контрольные точки, темный режим, предпочтения с уменьшенным движением и многое другое. Например, используйте md:will-change-scroll, чтобы применить утилиту will-change-scroll только на экранах среднего размера и выше.

<div class="will-change-auto md:will-change-scroll">
  <!-- ... -->
</div>

Чтобы узнать больше, ознакомьтесь с документацией по адаптивному дизайну, темному режиму и другим модификаторам медиазапросов.


Использование пользовательских значений

Настройка вашей темы

По умолчанию Tailwind предоставляет четыре will-change. Вы можете настроить эти значения, отредактировав theme.willChange или theme.extend.willChange в вашем файле tailwind.config.js.

tailwind.config.js
module.exports = {
  theme: {
    extend: {
      willChange: {
        'left-top': 'left, top',
      }
    }
  }
}

Дополнительные сведения о настройке темы по умолчанию смотрите в документации настройка темы.

Произвольные значения

Если вам нужно использовать одноразовое will-change value, которое не имеет смысла включать в вашу тему, используйте квадратные скобки, чтобы сгенерировать свойство на лету, используя любое произвольное значение.

<div class="will-change-[top,left]">
  <!-- ... -->
</div>

Узнайте больше о поддержке произвольных значений в документации по произвольным значениям.