如何将CSS3转换应用于除background-position之外的所有属性?
我想申请一个CSS过渡到除了background-position之外的所有属性。 我试图这样做:
.csstransitions a { -webkit-transition: all 0.3s ease; -moz-transition: all 0.3s ease; -o-transition: all 0.3s ease; -ms-transition: all 0.3s ease; transition: all 0.3s ease; } .csstransitions a { -webkit-transition: background-position 0s ease 0s; -moz-transition: background-position 0s ease 0s; -o-transition: background-position 0s ease 0s; -ms-transition: background-position 0s ease 0s; transition: background-position 0s ease 0s; }
首先,我设置所有的属性过渡,然后我试图只覆盖background-position属性的过渡。
但是,这似乎也重置所有其他属性 – 所以基本上没有任何转换似乎再发生。
有没有办法做到这一点,而不列出所有的属性?
这是一个在Firefox上也可以使用的解决scheme:
transition: all 0.3s ease, background-position 1ms;
我做了一个小演示: http : //jsfiddle.net/aWzwh/
希望不要迟到。 这是完成使用只有一条线!
-webkit-transition: all 0.2s ease-in-out, width 0, height 0, top 0, left 0; -moz-transition: all 0.2s ease-in-out, width 0, height 0, top 0, left 0; -o-transition: all 0.2s ease-in-out, width 0, height 0, top 0, left 0; transition: all 0.2s ease-in-out, width 0, height 0, top 0, left 0;
这在Chrome上运行。 你必须用逗号分隔CSS属性。
这是一个工作的例子: http : //jsfiddle.net/H2jet/
尝试这个…
* { transition: all .2s linear; -webkit-transition: all .2s linear; -moz-transition: all .2s linear; -o-transition: all .2s linear; } a { -webkit-transition: background-position 1ms linear; -moz-transition: background-position 1ms linear; -o-transition: background-position 1ms linear; transition: background-position 1ms linear; }
尝试:
-webkit-transition: all .2s linear, background-position 0;
这对我的工作在类似的东西..
您可以尝试使用标准的W3C方式:
.transition { transition: all 0.2s, top 0s, left 0s, width 0s, height 0s; }