0

0

在css中Animate.css与hover结合使用

P粉602998670

P粉602998670

发布时间:2025-10-24 18:40:02

|

745人浏览过

|

来源于php中文网

原创

答案:通过引入 Animate.css 并结合 :hover 伪类,可为元素添加鼠标悬停动画。需先引入库文件,再为元素设置 animate__animated 基础类,并在 hover 时指定 animate__ 开头的动画名称(如 bounce、swing),同时可通过 CSS 控制动画节奏或用 JavaScript 实现一次性动画触发,确保动画流畅且不重复播放。

在css中animate.css与hover结合使用

在 CSS 中,Animate.css 是一个流行的动画库,提供了大量预定义的 CSS 动画效果。如果你想让某个元素在用户鼠标悬停(:hover)时触发动画,可以将 Animate.css 与 :hover 结合使用。下面介绍几种实用的方法。

1. 基本用法:添加 hover 触发动画

首先引入 Animate.css 文件:

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css">

然后为元素设置默认的 animate__animated 类,并在 :hover 时添加具体的动画类,比如 animate__bounce

.my-element:hover {
  animation-name: animate__bounce;
  animation-duration: 1s;
}

同时确保 HTML 元素包含必要的基础类:

立即学习前端免费学习笔记(深入)”;

<div class="my-element animate__animated">悬停我</div>

这样,当鼠标悬停时就会播放弹跳动画。

2. 使用 @keyframes 直接调用动画

Animate.css 的动画本质是 @keyframes。你可以直接引用这些 keyframes 名称(通常以 animate__ 开头),避免每次写完整类名。

例如自定义 hover 效果:

绘蛙
绘蛙

电商场景的AI创作平台,无需高薪聘请商拍和文案团队,使用绘蛙即可低成本、批量创作优质的商拍图、种草文案

下载
.card:hover {
  animation: animate__swing 1s ease;
}

对应的 HTML:

<div class="card animate__animated">卡片</div>

注意:必须保留 animate__animated 类,否则 animation 属性不会生效。

3. 避免重复触发:控制动画节奏

如果快速多次悬停,动画可能反复播放,影响体验。可以通过 CSS 控制:

.my-element {
  animation-duration: 0.6s;
  animation-fill-mode: both;
}

.my-element:hover {
  animation-name: animate__pulse;
  animation-iteration-count: infinite; /* 可选:持续动画 */
}

或者限制只播放一次,防止叠加:

.my-element {
  transition: none;
}

.my-element:hover {
  animation: animate__fadeIn 0.5s;
}

4. JavaScript 辅助实现更精细控制(可选)

如果需要更复杂的逻辑,比如只播放一次动画,可以用 JS 添加和移除类:

document.querySelector('.btn').addEventListener('mouseenter', function () {
  if (!this.classList.contains('animate__animated')) {
    this.classList.add('animate__animated', 'animate__tada');
  }
});

这种方式适合“只动画一次”的场景。

基本上就这些。结合 Animate.css 和 :hover 能快速实现吸引人的交互效果,关键是正确引用动画名称并管理好动画状态。不复杂但容易忽略细节。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
ajax教程
ajax教程

php中文网为大家带来ajax教程合集,Ajax是一种用于创建快速动态网页的技术。通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。php中文网还为大家带来ajax的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

166

2023.06.14

ajax中文乱码解决方法
ajax中文乱码解决方法

ajax中文乱码解决方法有设置请求头部的字符编码、在服务器端设置响应头部的字符编码和使用encodeURIComponent对中文进行编码。本专题为大家提供ajax中文乱码相关的文章、下载、课程内容,供大家免费下载体验。

170

2023.08.31

ajax传递中文乱码怎么办
ajax传递中文乱码怎么办

ajax传递中文乱码的解决办法:1、设置统一的编码方式;2、服务器端编码;3、客户端解码;4、设置HTTP响应头;5、使用JSON格式。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

124

2023.11.15

ajax网站有哪些
ajax网站有哪些

使用ajax的网站有谷歌、维基百科、脸书、纽约时报、亚马逊、stackoverflow、twitter、hacker news、shopify和basecamp等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

257

2024.09.24

if什么意思
if什么意思

if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。

847

2023.08.22

counta和count的区别
counta和count的区别

Count函数用于计算指定范围内数字的个数,而CountA函数用于计算指定范围内非空单元格的个数。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

203

2023.11.20

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

871

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

30

2025.12.06

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.9万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 3.6万人学习

CSS教程
CSS教程

共754课时 | 42.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号