利用CSS完成一个悬停过渡动画的项目(超级简单)


当前第2页 返回上一页

1

2

3

.fade:hover {

  opacity: 0.5;

}

简单吧。上面这句CSS声明就为div指定了一个悬停效果。如下就是目前它展现的样子。而你之所以能够看到过渡样式,是因为我们一开始在名为box的类中使用了transition:all 0.25s ease;的声明。看下面,是不是一个还不错的褪色效果:

3.gif

2.来点颜色看看

指定一个变色过渡其实和褪色过渡的过程异曲同工。首先,创建一个div元素,并为它添加一个名为color的类。

1

2

3

<div class='box color'>

  <p>COLOR HERE</p>

</div>

同样地,我们也要借助:hover选择器来帮我们完成这件事,但是这一次我们不是改变透明度而是背景色:

1

2

3

.color:hover {

  background: #FF5722;

}

如下就是实际效果了:

4.gif

3.一起摇摆

接下来,来实现一个摆动的效果。这个效果实现起来比前面的两个例子稍显复杂。在这个例子中,我会采用@keyframes来完成。

@keyframes――赋予你在一个CSS动画序列中控制中间步骤的魔力。

首先还是一样,你肯定已经听烦了,创建一个div元素,并未它添加一个名为wiggle的类:

1

2

3

<div class='box wiggle'>

  <p>WIGGLE WIGGLE</p>

</div>

接下来,我们要做的就是借助@keyframes来创建动画。我们先给动画起个名字,就叫wiggle吧。并在如下的代码中添加抖动效果的实现:

1

2

3

4

5

6

7

@keyframes wiggle {

  20%  { transform: translateX(4px);  }

  40%  { transform: translateX(-4px); }

  60%  { transform: translateX(2px);  }

  80%  { transform: translateX(-1px); }

  100% { transform: translateX(0);    }

}

从上面的代码已经可以看出,@keyframes赋予我们将动画分解成单步,并且精确定义每一步发生了什么的能力。通过百分比的方式指定动画的进度:

20%――div相对于初始位置右移4px。

40%――div相对于初始位置左移4px。

60%――div相对于初始位置右移2px。

80%――div相对于初始位置左移1px。

100%――div恢复到初始位置。

现在我们就能借助:hover选择器来展示wiggle的动画了:

1

2

3

4

.wiggle:hover {

  animation: wiggle 1s ease;

  animation-iteration-count: 1;

}

我们将animation设置成wiggle。同时希望动画持续1秒的时长,采用ease的动画效果。

最后,就是指定动画在每次鼠标指针悬停的时候触发一次。

下图就是最终的动画效果:

5.gif

以上就是利用CSS完成一个悬停过渡动画的项目(超级简单)的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

css怎么禁止滚动条滚动

css border-bottom-color属性怎么用

css如何设置最小高度

vue中如何集成css框架?方法介绍

css中@import是什么意思?

css怎么设置div的透明度

css怎么设置间距

css如何实现表单验证功能

css相对定位什么意思

react如何引入css

更多相关阅读请进入《css》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...