SpinKit README

The project's README from github.com/tobiasahlin/SpinKit. As one markdown file: README.md.

SpinKit

Simple loading spinners animated with CSS. See demo. SpinKit only uses (transform and opacity) CSS animations to create smooth and easily customizable animations.

Usage

You can include SpinKit to your project with bower:

$ bower install spinkit

or npm:

$ npm install spinkit

Spinners

Given that you have included spinkit.min.css in your project, these snippets will produce the different spinners:

Plane

<div class="sk-plane"></div>

Chase

<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>

Bounce

<div class="sk-bounce">
  <div class="sk-bounce-dot"></div>
  <div class="sk-bounce-dot"></div>
</div>

Wave

<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>

Pulse

<div class="sk-pulse"></div>

Flow

<div class="sk-flow">
  <div class="sk-flow-dot"></div>
  <div class="sk-flow-dot"></div>
  <div class="sk-flow-dot"></div>
</div>

Swing

<div class="sk-swing">
  <div class="sk-swing-dot"></div>
  <div class="sk-swing-dot"></div>
</div>

Circle

<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>

Circle Fade

<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>

Grid

<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>

Fold

<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>

Wander

<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:

Implementing a fallback spinner

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…
}

SpinKit (tobiasahlin/SpinKit)

Searching Database…

19.3K ·GitHub
这是什么东西?SpinKit 是一组用纯 CSS 实现动画效果的加载指示器(loading spinner)——只要把这份样式表放进网页项目,不需要 JavaScript 或图片,就能得到流畅的加载动画。
它是一个我要引入的 CSS 文件,还是只能复制粘贴的代码?两者都可以。你既可以引入 spinkit.css 或 spinkit.min.css,也可以只复制粘贴你需要的那个加载动画的代码——各个加载动画之间互不依赖,没有共享的类,也没有共享的动画。
我怎么在页面里加一个加载动画?先用 npm 或 bower 安装这个包(或者直接粘贴 CSS 代码),引入 spinkit.min.css,然后从 examples.html 里复制粘贴你想要的那个加载动画的 HTML 片段。
运行它需要 JavaScript 或 jQuery 吗?不需要。这些加载动画是纯 CSS 的,只用了 transform 和 opacity 两个属性来实现动画,这正是动画流畅的原因。JavaScript 只在检测浏览器支持情况、显示备用方案时才用得上。
这些加载动画在所有浏览器里都能用吗?几乎到处都能用:CSS 关键帧动画的全球支持率约为 96.5%,CSS 变量约为 91.8%。对于较老的浏览器,你可以去掉 CSS 变量,或者用 Modernizr 检测动画支持情况,然后换成 GIF 备用方案。
SpinKit 一共包含多少种加载动画样式?十二种:Plane、Chase、Bounce、Wave、Pulse、Flow、Swing、Circle、Circle Fade、Grid、Fold 和 Wander。演示页面展示了所有这些效果。
怎么修改加载动画的大小和颜色?覆盖 CSS 变量即可:--sk-size 设置加载动画的宽度和高度,--sk-color 设置它的颜色。默认情况下加载动画是 40px,背景颜色为 #333。
怎么让加载动画在页面居中?给加载动画元素加上 sk-center 这个工具类就行——它会把 margin 设为 auto。
Size
0.3 MB
Stars
19.3K
Age
12y
Commits · 90 Days