【问题标题】:How to apply CSS3 transforms with keyframe animations ?如何在关键帧动画中应用 CSS3 变换?
【发布时间】:2012-09-28 20:12:58
【问题描述】:

如何通过 CSS3 动画应用多个变换?

这是我的 HTML 代码:

<div class="container">
<div class="cell"><span class="inner"></span><span class="inner"></span></div>
<div class="cell"><span class="inner"></span><span class="inner"></span></div>
<div class="cell"><span class="inner"></span><span class="inner"></span></div>
<div class="cell"><span class="inner"></span><span class="inner"></span></div>
<div class="cell"><span class="inner"></span><span class="inner"></span></div>
</div>

我的尝试:

@-webkit-keyframes firstanim{
    from{
        -webkit-transform:scale(1);
        -webkit-transform:rotate(0deg);
    backgroud:skyblue;
    left:0px;

    -webkit-transform: rotateY(0deg);
   }    to{
    -webkit-transform:rotate(360deg);
    -webkit-transform:scale(1.5);
    background:orange;
    left:100px;
    -webkit-transform: rotateY(360deg);
   }
}


.container{
    border:1px solid black;
    padding:20px;
    width:250px;
    height:50px;
    position:realtive;
}
.cell{
    width:25px;
    height:25px;

    background:skyblue;

    float:left;
    display:inline-block;
    margin:0px 5px;
    position:relative;
    -webkit-animation: firstanim 3s infinite;

}
.inner{
 width:100%;
 height:50%;
 float:left;

    border:1px solid white;
    border-left-width:0px;
    borer-right-width:0px;
}

结果位于here

即使我添加了更多,也只会对元素应用一种变换。

【问题讨论】:

    标签: jquery html css css-transforms


    【解决方案1】:

    如果你这样写:

    transform: rotate(30deg);
    transform: scale(3);
    

    然后第二个覆盖第一个,您的元素只会缩放,不会旋转。

    为了对单个元素应用多个变换,您需要将它们链接起来。

    例子:

    transform: rotate(30deg) scale(3) translateX(3em) skewY(60deg);
    

    另外,应用它们的顺序很重要,根据选择的顺序,您可能会得到不同的结果 - 请参阅 this example,其中蓝色框的形状与应用相同的两个变换后的红色一个,但顺序相反。

    你的链式转换:http://jsfiddle.net/TBrf2/4/

    【讨论】:

      【解决方案2】:

      这里是fiddle demo 处理多个转换。

      -webkit-transform:scale(1)  rotateY(0deg);
      

      你需要这样申请。

      【讨论】:

      • 请不要发布与另一个答案相同的答案,特别是如果另一个答案更详细。它不会增加任何贡献。
      • 对不起!由于更新小提琴,我没有看到答案
      猜你喜欢
      • 1970-01-01
      • 2012-12-22
      • 1970-01-01
      • 1970-01-01
      • 2015-07-03
      • 2023-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多