【发布时间】:2021-04-05 19:33:48
【问题描述】:
我目前正在尝试学习如何使用cubic-bezier(),但我有点挣扎。
据我了解,它有助于创建由 4 个点组成的贝塞尔曲线,比如说 P0、p1、p2、p3。
P0 和 p3 的坐标分别为 (0, 0) (1, 1),它们代表曲线的起点和终点。
X代表时间,Y代表进度。
所以如果我的函数看起来像
transition-timing-function: cubic-bezier(0.7, 0.2, 1, 1);
在过渡时间的 7/10 之前,我的动画不应该真的很慢吗(所以在过渡时间的 7/10 时,我得到了 0.2 的进度)并且在其余时间非常快? (所以从 7/10 -> 10/10 的时间应该有 0.8 的动画 - 所以应该很快)
这就是我假设它工作的方式,实际上它没有。 这是我的代码
.transitionTest {
width: 200px;
height: 200px;
background-color: blue;
margin: 100px 0 0 100px;
transition-property: all;
transition-duration: 2s;
transition-timing-function: cubic-bezier(0.7, 0.2, 1, 1);
}
.transitionTest:hover {
transform: rotate(180deg);
background-color: red;
width: 100px;
height: 100px;
}
<div class="transitionTest"></div>
另外,如果我在这个函数中使用负值会发生什么?
【问题讨论】:
-
抱歉,您能否向我们展示预期的结果,以便我们了解您的问题。因为对我来说你的代码工作得很好。
标签: css css-transitions