首页 > 代码库 > CSS动画-页面特效

CSS动画-页面特效

2D、3D转换

  通过CSS3转换,我们能够对元素进行移动、缩放、转动、拉长和拉伸

  2D转换方法

    translate() 移动

      transform:translate(100px,100px)

      -webkit-transform:translate(100px,100px) //safari chrome

      -ms-transform:translate(100px,100px) //IE

      -o-transform:translate(200px,100px)  //opera

      -moz-transform:translate(200px,100px) //firefox

    rotate() 旋转

      transform:rotate(200deg)

      -webkit-transform:rotate(200deg) //safari chrome

      -ms-transform:rotate(200deg) //IE

      -o-transform:rotate(200deg)  //opera

      -moz-transform:rotate(200deg) //firefox

    scale() 缩放

      transform:scale(1,2)

      -webkit-transform:scale(1,2) //safari chrome

      -ms-transform:scale(1,2) //IE

      -o-transform:scale(1,2)  //opera

      -moz-transform:scale(1,2) //firefox

    skew() 倾斜

      transform:skew(50deg,50deg) //Z轴倾斜50度,Y轴倾斜50度

      -webkit-transform:skew(50deg,50deg) //safari chrome

      -ms-transform:skew(50deg,50deg) //IE

      -o-transform:skew(50deg,50deg)  //opera

      -moz-transform:skew(50deg,50deg) //firefox  

    matrix()

  3D转换方法

    rotateX()

      transform:rotateX(120deg) 

      -webkit-transform:rotateX(120deg) //safari chrome

      -ms-transform:rotateX(120deg) //IE

      -o-transform:rotateX(120deg)  //opera

      -moz-transform:rotateX(120deg) //firefox  

    rotateY()

 

过渡

  元素从一种样式转换成另一种样式

    动画效果的CSS

    动画执行的时间

  属性

    transition 设置四个过渡属性

      transition:width 2s,height 2s,transform 2s;

      -webkit-transition:width 2s,height 2s,-webkit-transform 2s; //safari chrome

      -ms-transition:width 2s,height 2s,-ms-transform 2s //IE

      -o-transition:width 2s,height 2s,-o-transform 2s  //opera

      -moz-transition:width 2s,height 2s,-moz-transform 2s //firefox  

    transition-property 过渡的名称

    transition-duration 过渡效果花费的时间

    transition-timing-function 过渡效果的时间曲线

    transition-delay 过渡效果开始时间-延时开始的时间

 

动画

  通过CSS3,也可以创建动画

  动画需要遵循@keyframes规则

    规定动画的时长

    规定动画的名称

      div{

        animation:anim 5s infinite alternate;

        -webkit-animation:anim 5s;

      }

      @keyframes anim{

        0%{background:red;left:0px;top:0px}

        25%{background:blue;left:200px;top:0px}

        50%{background:#ccffcc;left:200px;top:200px}

        75%{background:#00fffff;left:0px;top:200px}

        100%{background:red;left:0px;top:0px}

      }

      @-web-keyframes anim{

        0%{background:red;left:0px;top:0px}

        25%{background:blue;left:200px;top:0px}

        50%{background:#ccffcc;left:200px;top:200px}

        75%{background:#00fffff;left:0px;top:200px}

        100%{background:red;left:0px;top:0px}

      }

 

多列

  在CSS3中,可以创建多列来对文本或者区域进行布局

  属性

    column-count

    column-gap

    column-rule

      div{

        column-count:3;

        -webkit-column-count:3;

        -webkit-column-gap:50px;

        -moz-column-gap:50px;

        column-gap:50px;

        column-rule:5px outset #FF0000;

        -webkit-column-rule:5px outset #FF0000;

      }

 

瀑布流

  .container{

    column-width:250px;

    -webkit-column-width:250px;

    -webkit-column-gap:5px;

    column-gap:5px;

  }

CSS动画-页面特效