Слева направо и скрыть через 5 секунд с помощью CSS - PullRequest
2 голосов
/ 05 октября 2019

Я показываю div справа налево, и через 5 секунд он будет скрыт. Я попробовал код справа налево, но через 5 секунд он не скрывается.

Я попытался opacity:0 внутри ключевого кадра, но моя анимация не работает.

Не могли бы вы помочь мне в этом? ?

.successAlet {
  background-color: red;
  color: #fff;
  position: fixed;
  top: 0;
  width: 400px;
  right: 0;
  z-index: 1001;
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
<div class="successAlet">
  <h2>Animate and then autohide in 5 sec</h2>
</div>

Ответы [ 2 ]

2 голосов
/ 05 октября 2019

Рассмотрим вторую анимацию. Вы также можете упростить свой код, удалив множество ненужных свойств

.successAlet {
  background-color: red;
  color: #fff;
  position: fixed;
  top: 0;
  width: 400px;
  right: 0;
  z-index: 1001;
  animation-name: fadeInRight,hide;
  animation-duration: 1s;
  animation-delay: 0s,3s;
  animation-fill-mode: both;
}



@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }
}

@keyframes hide {
  100% {
    opacity: 0;
  }
}
<div class="successAlet">
  <h2>Animate and then autohide in 5 sec</h2>
</div>
0 голосов
/ 05 октября 2019

для гладкой кожи

@keyframes hide {
  100% {
    opacity: 1;
    width: 0;
  }
}
...