@S3R3BRO

Как сделать плавный спойлер?

Добрый вечер!
Подскажите пожалуйста, как можно из этого кода сделать:
1) Плавное открытие и закрытие.
2) После закрытия чтоб страница поднималась вместе с закрывающемся спойлером до начала его открытия.

Или есть варианты на JS?

<div class="ba-testimonial__body">
	Спойлер — это раскрытие интриги, влияющее на восприятие сюжета книги или фильма.
	</br>
	<div class="ba-testimonial__more" id="timore01">
		Например, в детективах спойлером является имя убийцы. Чтобы не портить удовольствие от предстоящего чтения или просмотра фильма, текст спойлера прячут, оставляя возможность его просмотреть тем, кто хочет узнать подробности сюжета.
	</div>
	<button class="ba-extra-text ba-testimonial__toggle" onclick="document.getElementById('timore01').classList.toggle('open')" aria-label="Читать далее" data-more-text="Читать далее" data-less-text="Свернуть"></button>
</div>

.ba-testimonial p {
	margin-bottom: 16px
}
.ba-testimonial__body>:last-child {
	margin-bottom: 0
}
.ba-testimonial__toggle {
	color: var(--color);
	font-size: 14px
}
.ba-testimonial__toggle:hover {
	color: var(--color);
	text-shadow: 0 0 5px
}
.ba-testimonial__toggle:before {
	content: attr(data-more-text)
}
.open+.ba-testimonial__toggle:before {
	content: attr(data-less-text)
}
.ba-testimonial__more {
	display: none;
	margin-bottom: 0px
}
.ba-testimonial__more.open {
	display: block
}
.ba-testimonial__more>:last-child {
	margin-bottom: 0
}
  • Вопрос задан
  • 216 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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