Simple loading spinners animated with CSS. See demo. SpinKit only uses (transform
and opacity
) CSS animations to create smooth and easily customizable animations.
spinkit.css
or spinkit.min.css
to your project (or copy-paste the CSS that you need for your spinner—there are no dependencies between spinners, no shared classes, and no shared animations, etc, so it should be fairly straight-forward to extract only the code that you need)spinkit.css
or examples.html
sk-center
utility class to the spinner to center it (it sets margin
to auto
)width
and height
of all spinners are set to 40px
. background-color
is set to #333
.--sk-size
(spinner width & height) and --sk-color
(spinner color). If you need broader browser support, remove the CSS variables.You can include SpinKit to your project with bower
:
or npm:
Given that you have included spinkit.min.css
in your project, these snippets will produce the different spinners:
<div class="sk-plane"></div>
<div class="sk-chase"> <div class="sk-chase-dot"></div> <div class="sk-chase-dot"></div> <div class="sk-chase-dot"></div> <div class="sk-chase-dot"></div> <div class="sk-chase-dot"></div> <div class="sk-chase-dot"></div> </div>
<div class="sk-bounce"> <div class="sk-bounce-dot"></div> <div class="sk-bounce-dot"></div> </div>
<div class="sk-wave"> <div class="sk-wave-rect"></div> <div class="sk-wave-rect"></div> <div class="sk-wave-rect"></div> <div class="sk-wave-rect"></div> <div class="sk-wave-rect"></div> </div>
<div class="sk-pulse"></div>
<div class="sk-flow"> <div class="sk-flow-dot"></div> <div class="sk-flow-dot"></div> <div class="sk-flow-dot"></div> </div>
<div class="sk-swing"> <div class="sk-swing-dot"></div> <div class="sk-swing-dot"></div> </div>
<div class="sk-circle"> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> <div class="sk-circle-dot"></div> </div>
<div class="sk-circle-fade"> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> <div class="sk-circle-fade-dot"></div> </div>
<div class="sk-grid"> <div class="sk-grid-cube"></div> <div class="sk-grid-cube"></div> <div class="sk-grid-cube"></div> <div class="sk-grid-cube"></div> <div class="sk-grid-cube"></div> <div class="sk-grid-cube"></div> <div class="sk-grid-cube"></div> <div class="sk-grid-cube"></div> <div class="sk-grid-cube"></div> </div>
<div class="sk-fold"> <div class="sk-fold-cube"></div> <div class="sk-fold-cube"></div> <div class="sk-fold-cube"></div> <div class="sk-fold-cube"></div> </div>
<div class="sk-wander"> <div class="sk-wander-cube"></div> <div class="sk-wander-cube"></div> <div class="sk-wander-cube"></div> </div>Web browser compatibility
SpinKit uses CSS animations and variables:
How do you know if you need to provide a fallback? You can check for animation support with Modernizr, or manually check for the animation
property, and replace the spinner with a GIF if it's not supported:
function browserSupportsCSSProperty(propertyName) { var elm = document.createElement('div'); propertyName = propertyName.toLowerCase(); if (elm.style[propertyName] != undefined) return true; var propertyNameCapital = propertyName.charAt(0).toUpperCase() + propertyName.substr(1), domPrefixes = 'Webkit Moz ms O'.split(' '); for (var i = 0; i < domPrefixes.length; i++) { if (elm.style[domPrefixes[i] + propertyNameCapital] != undefined) return true; } return false; }
Use it to check for animation
support:
if (!browserSupportsCSSProperty('animation')) { // fallback… }
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4