先看看效果,像是弹簧在伸缩:

具体代码:

此处用到CSS3的transform属性。
     CSS3的变形(transform)属性让元素在一个坐标系统中变形。这个属性包含一系列变形函数,可以移动、旋转和缩放元素。
      transform属性可用于内联元素和块元素。其默认值为none,表示不元素不进行变形。transform另一个属性值是一系列的<transform-function>。<transform-function>表示一个或多个变形函数,以空格分开;我们可以同时对一个元素进行变形的多种属性操作,如rotate、scale、translate等。以往我们叠加效果都是用逗号(“,”)隔开,但在transform中使用多个transform-function时却需要有空格隔开。
  ● 2D transform常用的transform-function的功能:
      transform属性3D变形(3D transform)模块的一部分,也就是说所有的2D变形函数也包含于3D变形规范中。如此一来,CSS3变形中的函数根据不同的规范略有不同,下面列出的是变形中的2D和3D常用变形函数的功能,简单说明如下:
      translate():用来移动元素,可以根据X轴和Y轴坐标重新定位元素位置。在此基础上有两个扩展函数:translateX()和translateY()。
     scale():用来缩小或放大元素,可以使用元素尺寸发生变化。在此基础上有两个扩展函数:scaleX()和scaleY()。            rotate():用来旋转元素。
     skew():用来让元素倾斜。在此基础上有两个扩展函数:skewX()和skewY()。
     matrix():定义矩阵变形,基于X轴和Y轴坐标重新定位元素位置。
 ● 3D transform常用的transform-function的功能:
      translate3d():移元素元素,用来指定一个3D变形移动位移量。
      translate():指定3D位移在Z轴的位移量。
      scale3d():用来缩放一个元素。
      scaleZ():指定Z轴的缩放向量。
      rotate3d():指定元素具有一个三维旋转的角度。
      rotateX()、rotateY()和rotateZ():让元素具有一个旋转角度。
      perspective():指定一个透视投影矩阵。
      matrix3d():定义矩阵变形。
  ● transform-origin属性用来设置变换的原点。示例中代表旋转中心。      

CSS Code复制内容到剪贴板 #loader2,      #loader2:before,      #loader2:after {        border-radius: 50%;      }      #loader2:before,      #loader2:after {         positionabsolute;         content;      }      #loader2:before {        width: 5.2em;        height: 10.2em;        background#ffffff;        border-radius: 10.2em 0 0 10.2em;        top: -0.1em;        left: -0.1em;        -webkit-transform-origin: 5.2em 5.1em;        transform-origin: 5.2em 5.1em;        -webkit-animation: load2 2s infinite ease 1.5s;        animation: load2 2s infinite ease 1.5s;       }       #loader2 {         font-size11px;         text-indent: -99999em;         margin20px 20px;         positionrelative;         floatleft;         width: 10em;         height: 10em;         box-shadow: inset 0 0 0 1em #ff0f88;       }       #loader2:after {         width: 5.2em;         height: 10.2em;         background#ffffff;         border-radius: 0 10.2em 10.2em 0;         top: -0.1em;         left: 5.1em;         -webkit-transform-origin: 0px 5.1em;         transform-origin: 0px 5.1em;         -webkit-animation: load2 2s infinite ease;         animation: load2 2s infinite ease;        }        @-webkit-keyframes load2 {           0% {             -webkit-transform: rotate(0deg);             transform: rotate(0deg);           }           100% {             -webkit-transform: rotate(360deg);             transform: rotate(360deg);           }       }       @keyframes load2 {          0% {            -webkit-transform: rotate(0deg);            transform: rotate(0deg);          }          100% {            -webkit-transform: rotate(360deg);            transform: rotate(360deg);          }      }    

以上就是本文的全部内容,希望对大家学习CSS加载动画教程有所帮助。

CSS实现弹簧效果的旋转加载动画