Переходы и Анимация
Утилиты для управления переходом свойств CSS.
Используйте утилиты transition-*
, чтобы указать, какие свойства должны изменяться при их изменении.
Наведите кнопку, чтобы увидеть ожидаемое поведение
<button class="transition ease-in-out delay-150 bg-blue-500 hover:-translate-y-1 hover:scale-110 hover:bg-indigo-500 duration-300 ...">
Сохранить изменения
</button>
Для ситуаций, когда пользователь указал, что он предпочитает уменьшенное движение, вы можете условно применить анимацию и переходы, используя варианты motion-safe
и motion-reduce
:
<button class="transition transform hover:-translate-y-1 motion-reduce:transition-none motion-reduce:hover:transform-none ...">
Наведи на меня
</button>
Tailwind позволяет условно применять служебные классы в разных состояниях с помощью модификаторов вариантов. Например, используйте hover:transition-all
, чтобы применять утилиту transition-all
только при hover.
<div class="hover:transition-all">
<!-- ... -->
</div>
Полный список всех доступных модификаторов состояния смотрите в документации Наведение, фокус и другие состояния.
Вы также можете использовать модификаторы вариантов для таргетинга на медиа-запросы, такие как реагирующие контрольные точки, темный режим, предпочтения с уменьшенным движением и многое другое. Например, используйте md:transition-all
, чтобы применить утилиту transition-all
только на экранах среднего размера и выше.
<div class="md:transition-all">
<!-- ... -->
</div>
Чтобы узнать больше, ознакомьтесь с документацией по адаптивному дизайну, темному режиму и другим модификаторам медиазапросов.
По умолчанию Tailwind предоставляет утилиты свойств перехода для семи общих комбинаций свойств. Вы можете настроить эти значения, отредактировав theme.transitionProperty
или theme.extend.transitionProperty
в вашем файле tailwind.config.js
.
module.exports = {
theme: {
extend: {
transitionProperty: {
'height': 'height',
'spacing': 'margin, padding',
}
}
}
}
Дополнительные сведения о настройке темы по умолчанию смотрите в документации настройка темы.
Если вам нужно использовать одноразовое transition-property
, которое не имеет смысла включать в вашу тему, используйте квадратные скобки для создания свойства на лету с использованием любого произвольного значения.
<div class="transition-[height]">
<!-- ... -->
</div>
Узнайте больше о поддержке произвольных значений в документации по произвольным значениям.