UNPKG

animarte

Version:

Making the digital world a little more animated place

50 lines (48 loc) 1.57 kB
.animarte { position: relative; isolation: isolate; box-sizing: border-box; overflow: hidden; flex-shrink: 0; width: var(--animarte-size); height: var(--animarte-size); color: var(--animarte-color); } .animarte-semicircle--spinning-5 { display: grid; justify-items: center; align-items: center; } .animarte-semicircle--spinning-5 .animarte-semicircle__element { --padding: 15%; grid-area: 1/1; border-radius: 100vw; background-color: transparent; border-color: currentColor; border-style: solid; border-width: calc(var(--animarte-size) * 0.1); } .animarte-semicircle--spinning-5 .animarte-semicircle__element:nth-child(1), .animarte-semicircle--spinning-5 .animarte-semicircle__element:nth-child(2) { --slice-count: 2; --slice-gap: 90deg; -webkit-mask: repeating-conic-gradient(#000 0 calc(360deg / var(--slice-count) - var(--slice-gap)), transparent 0 calc(360deg / var(--slice-count))); mask: repeating-conic-gradient(#000 0 calc(360deg / var(--slice-count) - var(--slice-gap)), transparent 0 calc(360deg / var(--slice-count))); animation-name: semicircleSpinning5; animation-iteration-count: infinite; animation-duration: var(--animarte-speed); animation-timing-function: linear; } .animarte-semicircle--spinning-5 .animarte-semicircle__element:nth-child(1) { width: 100%; height: 100%; } .animarte-semicircle--spinning-5 .animarte-semicircle__element:nth-child(2) { width: 75%; height: 75%; animation-direction: reverse; } @keyframes semicircleSpinning5 { 100% { transform: rotate(1turn); } }