В настоящее время я создаю игру в блэкджек и использую оповещения, чтобы сообщить игроку, что он выиграл. В конце концов я переключился на использование animate. css, чтобы на экране появилось простое сообщение «Вы выиграли» и «Вы проиграли» после того, как логика c обнаружит победителя.
Я делаю это с помощью наличие функции popup (), которая запускается каждый раз, когда встречается параметр выигрыша или проигрыша в if if, и устанавливает отображение на «block». Сначала у меня был этот анимационный div между двумя сторонами игрового поля (сторона игрока и дилера, каждая со свойством flex), но я ненавидел тот факт, что, когда div появляется в запущенной функции, он толкает сторону игрока вниз , Чтобы исправить это, я подумал, что я мог бы просто добавить z-index к анимации, чтобы она просто перекрывалась.
Сначала это не работало, но затем я переместил div, содержащий мою анимацию, за пределы основной контейнер (который является гибким контейнером), который теперь работает и предотвращает выталкивание любого содержимого вниз ... но у меня возникают проблемы с позиционированием.
Я пытаюсь расположить div в центре экрана, чтобы действовать в качестве модального или всплывающего окна, и я хочу добавить интервал div, чтобы позволить мне закрыть весь контейнер, когда заканчивается таймер (и, таким образом, удалить анимацию с экрана и позволить игроку выбирать кнопка "новая игра").
Попробовав разные вещи, я могу либо ...
получить его центрирование (H и V), но нажав содержание (то есть z index не работает, именно с этого я и начал)
сделать так, чтобы он имел z-index и отображался над всем остальным, и даже чтобы он был центрирован на экране, б Вы не можете заставить его размеры работать должным образом, и есть этот странный сбой пользовательского интерфейса, когда полоса прокрутки появится, а затем исчезнет (как будто размер экрана увеличивается, когда анимация появляется, что странно, потому что анимация имеет z-индекс 2, так почему бы сделать экран больше? ).
Извините, если за этим немного трудно следить, но TLDR заключается в том, что я не могу заставить свой анимационный div отображаться горизонтально и вертикально по центру без каких-либо проблем.
Вот мой код:
<h1 class="animated jackInTheBox" id="youWin"></h1>
.jackInTheBox {
animation-duration: 4s;
animation-delay: 0s;
animation-iteration-count: 1;
margin: auto;
font-size: 32px;
position: relative;
z-index: 2;
margin: auto;
max-width: 100%;
text-align: center;
display: none;
background-color: teal;
}
Этот анимационный div находится внутри основного контейнера div, в самом верху
.mainContainer {
display: flex;
flex-direction: column;
width: auto;
height: auto;
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
margin: auto;
max-width: 100%;
max-height: 100%;
overflow: auto;
}
Часть меня думает, что это было бы лучше сделать с модальным, но я все еще хотел бы видеть, где я иду не так. Спасибо всем заранее.