diff options
Diffstat (limited to 'src/lib/Loading/Ellipsis.svelte')
| -rw-r--r-- | src/lib/Loading/Ellipsis.svelte | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/src/lib/Loading/Ellipsis.svelte b/src/lib/Loading/Ellipsis.svelte new file mode 100644 index 00000000..1dbe3b9f --- /dev/null +++ b/src/lib/Loading/Ellipsis.svelte @@ -0,0 +1,72 @@ +<div class="ellipsis"> + <div /> + <div /> + <div /> + <div /> +</div> + +<style> + .ellipsis { + display: inline-block; + position: relative; + width: 80px; + height: 80px; + } + + .ellipsis div { + position: absolute; + top: 33px; + width: 13px; + height: 13px; + border-radius: 50%; + background: #fff; + animation-timing-function: cubic-bezier(0, 1, 1, 0); + } + + .ellipsis div:nth-child(1) { + left: 8px; + animation: ellipsis-1 0.6s infinite; + } + + .ellipsis div:nth-child(2) { + left: 8px; + animation: ellipsis-2 0.6s infinite; + } + + .ellipsis div:nth-child(3) { + left: 32px; + animation: ellipsis-2 0.6s infinite; + } + + .ellipsis div:nth-child(4) { + left: 56px; + animation: ellipsis-3 0.6s infinite; + } + + @keyframes ellipsis-1 { + 0% { + transform: scale(0); + } + 100% { + transform: scale(1); + } + } + + @keyframes ellipsis-2 { + 0% { + transform: translate(0, 0); + } + 100% { + transform: translate(24px, 0); + } + } + + @keyframes ellipsis-3 { + 0% { + transform: scale(1); + } + 100% { + transform: scale(0); + } + } +</style> |