如何将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; } 

http://jsfiddle.net/H2jet/60/