Задать вопрос

Как плавно развернуть div?

Есть div который изначально скрыт, но при клике на кнопку плавно разворачивается.
Способ с display: none, а потом display: block не подходит так как не плавный.
Способ с opacity: 0 , а потом opacity: 1 тоже не подходит так как нужно чтобы элемент убирался из потока.
Способ с max-height: 0, а потом max-height: *какое-то число* тоже не подходит так как со временем в div будут добавляться новые элементы и высота будет изменяться.

Как это сделать? Желательно решение на JavaScript.
  • Вопрос задан
  • 3061 просмотр
Подписаться 7 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
  • Skillfactory
    Профессия Веб-разработчик
    12 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 2
Способ с max-height: 0, а потом max-height: *какое-то число* тоже не подходит так как со временем в div будут добавляться новые элементы и высота будет изменяться.


Можно обернуть контент блока, у этой обёртки мы будем брать clientHeight и присваивать это значение в max-height родителя

Вот, можно посмотреть здесь, возможно код не очень хороший, но суть уловить можно
https://codepen.io/Kirill9011/pen/BajEwBJ?editors=0010
Ответ написан
Комментировать
Spartak-2205
@Spartak-2205
Разработка и создание сайтов
Если в проекте используется jquery, то через .slideToggle() или аналог jQuery slideToggle на чистом Javascript
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы