Не можете сделать задержку рендеринга в css-grid-анимации?

Я использую анимация-CSS-сетка и библиотеку React для создания своего портфолио в сеточном дизайне, я как бы добился того, что хотел, — это ссылка на перо. Но когда я нажимаю на любое из полей, текст, который должен идти вместе с полем, отображается мгновенно. Я хочу, чтобы он отображался после увеличения окна. это фрагмент кода, который я использую при рендеринге текста.

class Card extends React.Component {
state = { expanded: false };
randomNumber = Math.floor(Math.random() * 5) + 1;

render() {
    return (
        <div
            style = {{ backgroundColor: this.props.color }}
            class = {`card card--${this.randomNumber} ${
                this.state.expanded ? "card--expanded" : ""
                }`}
            onClick = {() => {
                this.setState({ expanded: !this.state.expanded });
            }}
        >{this.state.expanded ? <Text /> :
            (<div>

                {/* <div className = "card__avatar" />
                <div className = "card__title" /> */}
                <div className = "card__description"> 
   {this.props.subject}</div>
            </div>)}
        </div>
    );
  }
}

Я визуализирую компонент Текст в тот момент, когда он получает расширенное состояние true. Я не знаю, как это отсрочить. Библиотека animate-css-grid предоставляет пользовательскую конфигурацию, но я не могу понять, как ее использовать. Может ли кто-нибудь, кто знаком с анимацией CSS, помочь мне здесь, пожалуйста.

Привет, мне интересно, добились ли вы какого-либо прогресса в этом? Вам помог мой ответ?

Andy Hoffman 05.03.2019 23:23

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

Mohd Hassan 07.03.2019 01:59
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
1
2
104
1

Ответы 1

Я добавил className вокруг того, что возвращает <Text />, и запустил анимацию, чтобы показать текст, когда присутствует --card-expandedclassName. Задержка 500ms меня устраивает, но она, конечно, регулируется.

.card-text {  
  opacity: 0;
}

.card--expanded .card-text {
  animation: 1s show-text forwards 500ms;
}

@keyframes show-text {
  to {
    opacity: 1;
  }
}

КодПен

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