Неккоректная работа спиннера в Safari

Создав спиннер при помощи анимации, проверил в браузерах Chrome/Firefox, все работает. Проверяю в Safari, анимация ведет себя по-другому. Прокручивается, но там, когда line идет по кругу, отображается не линия, а квадрат какой-то.

<!DOCTYPE html>
<html>
   <head>
      <meta charset="utf-8" />
      <title>HTML Document</title>
   </head>
   <body>
<div class="oob-timer-wrapper"> 
  <div class="oob-timer-container">
    <div class="timer-line">
    </div>
    <div class="timer-body">
      <div class="timer-counter"> 
        <div class="oob-timer">
        </div> 
      </div> 
    </div> 
  </div> 
     </div>
   </body>
</html>
.oob-timer-wrapper {
  padding-left: 60px;
}
.oob-timer-container {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background-color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  position: relative
}

.timer-body {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: #fff;
  text-align: center;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 4
}

.timer-line {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  text-align: center;
  width: 100%;
  height: 100%;
  animation: line 1s 121 linear forwards;
  z-index: 4
}

.timer-line:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background: linear-gradient(to top, #ff8fec, #85a5ff)
}

.oob-timer-container:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  z-index: 3;
  background: #fff;
  animation: mask_left 1s 121 steps(1, end) forwards
}

.oob-timer-container:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 100%;
  z-index: 3;
  background: linear-gradient(to bottom, #ffc88a, #ff8fec);
  animation: mask_right 1s 121 steps(1, end) forwards
}

.timer-counter {
  font-family: $cp-font-family;
  font-size: 14px;
  display: flex;
  justify-content: center;
  text-align: center;
}

@keyframes line {
  0% {
  }
  100% {
    transform: rotate(360deg)
  }
}

@keyframes mask_left {
  0% {
    visibility: visible
  }
  50%, 100% {
    visibility: hidden
  }
}

@keyframes mask_right {
  0% {
    visibility: hidden
  }
  50%, 100% {
    visibility: visible
  }
}

Пробовал вставлять расширения браузера -webkit-animation, расписывал все (их там 3 разных, пример на одной) animation:

animation-name: mask_left;
-webkit-animation: mask_left;
animation-duration: 1s;
-webkit-animation-duration: 1s;
animation-iteration-count: 121;
-webkit-animation-iteration-count:121;
animation-timing-function: steps(1, end);
-webkit-animation-animation-timing-function: steps(1, end);
animation-fill-mode: forwards;
-webkit-animation-fill-mode: forwards;

или так:

animation: mask_left 1s 121 steps(1, end) forwardsж
-webkit-animation: mask_left 1s 121 steps(1, end) forwards

Пробовал поменять:

@keyframes line {
    0% {
    }
    100% {
        transform: rotate(360deg)
        -webkit-transform: rotate(360deg)
    }
}

Пробовал еще экспериментировать с rotate: rotate3d(360deg) и расписывать процент отображения 0%, 25% и 50%, 100% И ничегоне помогло. В тупике. Прошу помочь знатоков особенности работы с Safari :(

Похожая задача была: Ошибка отображения safari [1]: https://i.stack.imgur.com/liNuE.jpg


Ответы (0 шт):