Я пытаюсь создать простой складной div, используя стилизованные компоненты в реакции.
Я могу заставить div открываться и закрываться в зависимости от состояния, но я не могу заставить переход работать. Он просто прыгает, чтобы открыть или закрыть.
Стилизованный компонент:
const Details = styled.div`
transition: 0.3s ease-out;
&.open {
height: auto;
padding: 25px 0;
}
&.closed {
height: 0;
overflow: hidden;
}
`;
JSX
<Details className={this.state.detailsOpen ? 'open' : 'closed'}>
{stuff}
</Details>
height
наauto
(вам также не хватаетheight
в объявлении правилаtransition
). Однако вы можете выполнить переходmax-height
, что является обычным обходным путем для этой цели, см.: stackoverflow.com/questions/3508605/ - person Miguel Calderón   schedule 20.03.2018&.open {
? - person Tomasz Mularczyk   schedule 20.03.2018