【问题标题】:CSS3 transforms: how to undo a transform operation?CSS3 变换:如何撤消变换操作?
【发布时间】:2012-01-11 12:50:40
【问题描述】:

我想对<div> 应用翻译转换,然后能够将该<div> 返回到其原始位置。

对取反值应用相同的操作不会将 DIV 返回到屏幕中的原始位置:

  • 应用翻译:-webkit-transform: translate(300px, 400px);

  • 不起作用的“撤消”效果:-webkit-transform: translate(-300px, -400px);

我想控制撤消级别,所以重置转换不是一个选项。

【问题讨论】:

    标签: javascript animation css css-transforms


    【解决方案1】:

    在应用转换之前,您可以保存-webkit-transform 的当前值。撤消时只恢复保存的值。

    【讨论】:

    • 好主意——如果你想对一个元素应用多个可撤销的变换,你需要这样做。
    【解决方案2】:

    我认为你不能将同一个变换函数的多个实例应用于一个元素。我认为第二个-webkit-transform:translate(); 声明替换第一个,而不是作为它的补充

    -webkit-transform: translate(0, 0); 应该将元素返回到其原始(翻译前)位置。见:

    【讨论】:

    • 没错,您不会期望规则 font-size: 12px;font-size: 16px; 的另一个规则会产生 28 像素高的字母。
    • -webkit-transform: translate(0, 0);成功了,非常感谢!
    猜你喜欢
    • 2011-04-28
    • 2023-03-23
    • 2013-04-26
    • 1970-01-01
    • 1970-01-01
    • 2012-12-04
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    相关资源
    最近更新 更多