Я написал приложение React, используя переходы CSS. Но эти переходы работают некорректно в некоторых компонентах. В моем приложении только те компоненты, которые двигаются вверх, хорошо работают, те, кто движется вниз, мгновенно перемещаются без анимации. (Я хочу, чтобы они оба двигались с анимацией.)
Вот CSS, который я использовал там:
div.canvas {
position: absolute;
top: 90px;
left: 60px;
width: 640px;
height: 480px;
border: 1px solid #999;
background: white;
}
div.canvas-rect {
position: relative;
margin-left: 20px;
margin-top: 10px;
height: 20px;
background: green;
transition: all 1s linear;
-moz-transition: all 1s linear; /* Firefox 4 */
-webkit-transition: all 1s linear; /* Safari 和 Chrome */
-o-transition: all 1s linear; /* Opera */
}
ОБНОВЛЕНО:
Я также создал проект codepen.io, чтобы показать проблему. Он имеет полный код этого демонстрационного проекта.
Я попытался добавить запись журнала в методы componentDidUpdate
, componentDidMount
и componentWillUnmount
, чтобы показать, воссоздан или обновлен этот компонент, он показывает, что все они обновлены (не воссозданы, или удаляются) каждую секунду.