Ответ на этот вопрос говорит об использовании display: none и display: block, но это не помогает тем, кто пытается использовать css-переходы, чтобы показать и скрыть содержимое с помощью свойства видимости.
Это также сводило меня с ума, потому что использование дисплея убивает любые CSS-переходы.
Одним из решений является добавление этого класса, который использует видимость:
overflow:hidden
Чтобы это работало, это зависит от макета, но оно должно содержать пустой контент внутри div, в котором он находится.