【发布时间】:2017-01-09 00:39:40
【问题描述】:
我想在悬停时为 css 箭头(指向左侧)设置动画,以便在悬停时稍微向右移动并停留在那里。一旦鼠标悬停在箭头之外,它也应该随着动画向后移动。
@-webkit-keyframes arrow-left {
0% {
-webkit-transform: translateX(0);
transform:translateX(0);
}
20% {
-webkit-transform:translateX(0);
transform:translateX(0);
}
100% {
-webkit-transform:translateX(-12px);
transform:translateX(-12px);
}
}
@keyframes arrow-left {
0% {
-webkit-transform:translateX(0);
transform:translateX(0);
}
20% {
-webkit-transform:translateX(0);
transform:translateX(0);
}
100% {
-webkit-transform:translateX(-12px);
transform:translateX(-12px);
}
}
.arrow-icon.left:hover {
-webkit-animation:arrow-left 0.35s ease-in;
animation:arrow-left 0.35s ease-in;
-webkit-transform-origin:50% 0%;
-ms-transform-origin:50% 0%;
transform-origin:50% 0%
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
}
关于如何使动画也能正常工作的任何想法,所以它会动画回来并且不会跳回?
【问题讨论】:
-
从你的小提琴看来似乎已经是了。
-
不,只有线条向后动画,但箭头的位置没有动画,如果你用鼠标离开 translateX(-12px) 会向后跳跃而没有动画。悬停时它向左移动 12px,鼠标移出时它跳回 12px
标签: html css css-transitions