CSS - Как вращать border не вращая сам объект?

Есть круглая кнопка с background-image. На ней висит соответственно круглый border. Мне нужно вращать border, но так, чтобы сама кнопка (или хотя бы background-image) оставалась на месте и не вращалась.


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

Автор решения: Roman Grinyov

Можно использовать флексы и анимацию:

body {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
  margin: 0;
}

@keyframes border-rotation {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

#round-button, 
#round-button > div {
  height: 150px;
  width: 150px;
}

#round-button {
  display: flex;
}

#round-button__border {
  animation: border-rotation 5s linear infinite;
  border: 5px dashed #0a479e;
  border-radius: 100%;
}

#round-button__background {
  background: url(//w3.org/favicon.ico) center no-repeat;
  position: absolute;
}
<div id="round-button">
  <div id="round-button__border"></div>
  <div id="round-button__background"></div>
</div>

→ Ссылка