要在CSS中停止在悬停时抖动的效果,你可以使用CSS的动画属性和伪类选择器来实现。以下是一个示例代码:
HTML代码:
CSS代码:
.box {
width: 100px;
height: 100px;
background-color: red;
animation: stopShake 0s forwards;
}
.box:hover {
animation: none;
}
@keyframes stopShake {
0% {
transform: translateX(0);
}
50% {
transform: translateX(10px);
}
100% {
transform: translateX(0);
}
}
在上面的示例中,我们使用了animation
属性来定义一个名为stopShake
的动画。动画会在元素的transform
属性上应用一系列变换,让元素水平抖动。
然后,我们在.box
的样式中将动画的持续时间设置为0秒,并使用forwards
关键字使动画停留在最后一个关键帧的状态。这样,元素在默认状态下就不会抖动。
接下来,我们使用.box:hover
伪类选择器来定义悬停时的样式。在这里,我们将animation
属性设置为none
,以取消悬停时的抖动效果。
最后,我们使用@keyframes
规则定义了stopShake
动画的关键帧。在这个示例中,我们定义了三个关键帧,分别是开始、中间和结束状态,通过transform
属性的translateX
函数来实现水平平移。
使用以上示例代码,当鼠标悬停在元素上时,元素将不再抖动。