Я заметил, что при использовании Bootstrap Модальные , если у меня есть CSS Анимации для элементов внутри моего модала, эти анимации не применяются до тех пор, пока не появится модальное окно. Это действительно здорово, но я не могу понять, что вызывает анимацию. более того, если я закрою модальное и снова открою. анимации сбрасываются и запускаются снова.
Я почти уверен, что это Bootstrap вещь, но я не могу найти какую-либо документацию конкретно об этом.
Причина, по которой я интересует то, что я хотел бы воспользоваться этим путем повторного запуска анимации. и имеет смысл попытаться подключиться к существующей функции Bootstrap, если это возможно. (это, и мне просто любопытно)
- Это действительно Bootstrap "особенность"?
- Или это CSS вещь, где анимация не применяется, пока элементы не отображаются?
.animate-box {
width: 100px;
height: 100px;
background: red;
position: relative;
animation-name: example;
animation-duration: 3s;
animation-delay: 0s;
animation-fill-mode: both;
}
@keyframes example {
from {
background-color: yellow;
}
to {
background-color: blue;
}
}
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#exampleModalLong">
Launch demo modal
</button>
<!-- Modal -->
<div class="modal fade" id="exampleModalLong" tabindex="-1" role="dialog" aria-labelledby="exampleModalLongTitle" aria-hidden="true">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-body">
<div class="animate-box">
</div>
</div>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>