Перейти к основному содержанию

Обзор

AnimatedIconCrossfade выполняет плавное перекрестное затухание между содержимым узлов activeIcon и inactiveIcon в соответствии с isActive. Он не управляет действием или состоянием. Размещайте его внутри подписанной кнопки.

Использование

Оба узла остаются смонтированными при изменении isActive, сохраняя своё локальное состояние. Слои анимируют непрозрачность и масштаб, а также отключают переходы при уменьшенном движении. Оба слоя являются декоративными; сохраняйте доступное имя действия на окружающем элементе управления. Для отдельного изображения с подписью задайте role="img" и aria-label в корневом элементе. Нативные атрибуты, события, className, style и ref применяются к встроенному элементу span, который может находиться внутри кнопки. render заменяет этот целевой элемент посредством композиции Base UI. По умолчанию размеры корневого элемента задаются токеном темы для маленьких значков. Явно задавайте размер каждого узла значка и используйте стили ширины и высоты корневого элемента для более крупной графики. Замените конструкторы ActiveIcon и InactiveIcon узлами activeIcon и inactiveIcon в нижнем регистре. Перенесите прежний параметр size в размеры узла и стили корневого элемента.

Свойства

ReactNode
обязательно
Decorative node content for the active state.
string
CSS class applied to the inline span root.
ReactNode
обязательно
Decorative node content for the inactive state.
boolean
обязательно
Shows activeIcon when true and inactiveIcon otherwise.
ReactElement<unknown, string | JSXElementConstructor<any>> | ComponentRenderFn<HTMLProps, {}>
Replaces the span root while preserving both transition layers.
CSSProperties
Inline styles applied to the root, including width and height.