Реплицируйте штрих-код SVG, используя только HTML и SCSS (или CSS) - PullRequest
0 голосов
/ 19 апреля 2019

Я пытаюсь создать классический загрузчик кругов, похожий на этот пример https://dribbble.com/shots/1918018-Circle-Loading-Animation

Итак, я знаю, что можно использовать SVG с штрих-чертой и уверен, что это будет легкий путь. Кстати, я спрашиваю, есть ли другой способ сделать это, используя только SCSS (или CSS).

Моя цель - воспроизвести загрузчик такого типа без добавления SVG-файла в HTML-файл.

Спасибо!

1 Ответ

1 голос
/ 19 апреля 2019

Если у вас все в порядке с минимальным значением stroke-dashoffset, равным примерно 25% окружности круга, вы можете сделать это следующим образом.

В основном у вас есть четыре квадратных дочерних элемента.У каждого есть круглая граница, покрывающая одну сторону квадрата (то есть 25% от окружности).Все эти дочерние элементы перекрываются.Затем вы поворачиваете каждого ребенка с немного разными временами начала анимации.

.lds-ring {
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px;
}
.lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 51px;
  height: 51px;
  margin: 6px;
  border: 6px solid #fff;
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #fff transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
  animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
  animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes lds-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}


body {
  background-color: black;
}
<div class="lds-ring">
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

Источник: https://loading.io/css/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...