CSS3过渡链接

Kos*_*Kos 11 css css3 css-transitions

什么是语法上干净的解决方案,在一个元素上逐个运行单个CSS3转换链?一个例子:

  • 将左侧设置为10px,将不透明度设置为1到200ms
  • 设置为30px到500ms
  • 将左侧设置为50px,将不透明度设置为0到200ms

可以在没有JavaScript的情况下完成吗?如果没有,如何使用JavaScript干净地编码?

jfr*_*d00 12

我相信你想要一个CSS3动画,你可以在动画中的不同点定义CSS样式,浏览器会为你做补间动画.以下是对它的描述:http://css3.bradshawenterprises.com/animations/.

您必须检查目标浏览器的浏览器支持.

这是一个适用于Chrome的演示版.动画是纯CSS3,我只使用Javascript来启动和重置动画:

http://jsfiddle.net/jfriend00/fhemr/

可以修改CSS以使其在Firefox 5+中也可以使用.

#box {
    height: 100px; 
    width: 100px; 
    background-color: #777;
    position: absolute;
    left: 5px;
    top: 5px;
    opacity: 0;
}

@-webkit-keyframes demo {
    0% {
        left: 10px;
    }
    22% {
        opacity: 1;
    }
    77% {
        left: 30px;
    }
    100% {
        left: 50px;
        opacity: 0;
    }
}

.demo {
    -webkit-animation-name: demo;
    -webkit-animation-duration: 900ms;
    -webkit-animation-iteration-count: 1;
    -webkit-animation-timing-function: ease-in-out;
}    
Run Code Online (Sandbox Code Playgroud)