Based on https://dribbble.com/shots/1691328-Woven-star
A Pen by Tryon Eggleston on CodePen.
Based on https://dribbble.com/shots/1691328-Woven-star
A Pen by Tryon Eggleston on CodePen.
| <div class='loading'> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| <div></div> | |
| </div> |
| @import "compass/css3"; | |
| $r: 100; | |
| $pi: 3.14159265358979323846; | |
| $total: 12; | |
| .loading{ | |
| position:absolute; | |
| top: 50%; | |
| left: 50%; | |
| margin-top: -#{$r}px; | |
| margin-left: -#{$r}px; | |
| width: $r * 2px; | |
| height: $r * 2px; | |
| animation: loader 140s linear infinite; | |
| div{ | |
| background: #005288; | |
| width: 134px; | |
| height: 15px; | |
| animation-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1.000); | |
| animation-iteration-count: infinite; | |
| animation-duration: 10s; | |
| position:absolute; | |
| transform: rotate(-45deg); | |
| transform-origin: 50% 50%; | |
| border: 3px solid #fff; | |
| $i: $total; | |
| @while $i > 0 { | |
| $x: (($r*.60) * cos( (( 360 / $total )* $i) * $pi / 180)) + 50; | |
| $y: (($r*.60) * sin( (( 360 / $total )* $i) * $pi / 180)) + 92; | |
| &:nth-of-type( #{$i} ){ | |
| top: #{$y}px ; | |
| left: #{$x}px; | |
| animation-name: bars-#{$i}; | |
| } | |
| $i: $i - 1; | |
| } | |
| } | |
| } | |
| @keyframes loader { | |
| 0% { transform: rotate(0deg); } | |
| 50% { transform: rotate(180deg); } | |
| 100% { transform: rotate(360deg); } | |
| } | |
| $i: $total; | |
| @while $i > 0 { | |
| $offset: ((360/$total) * $i) + 90 ; | |
| @keyframes bars-#{$i} { | |
| 0% { transform: rotate($offset + 0deg); } | |
| 25% { transform: rotate($offset + 180deg); } | |
| 50% { transform: rotate($offset + 180deg); } | |
| 75% { transform: rotate($offset + 360deg); } | |
| 100% { transform: rotate($offset + 360deg); } | |
| } | |
| $i: $i - 1; | |
| } |