目标

我们要实现的目标效果如下

过渡如何使用

可以清楚地看出效果图中的效果用到了css3中的过渡transition,先来了解一下transition
CSS3 过渡是元素从一种样式逐渐改变为另一种的效果

过渡共有四个属性,分别是:

transition-property: 规定应用过渡的 CSS 属性的名称
transition-duration: 定义过渡效果花费的时间。默认是 0
transition-timing-function: 规定过渡效果的时间曲线。默认是 “ease”
transition-delay: 规定过渡效果何时开始。默认是 0

其中,transition-property和transition-duration是必填的,否则动画无法生效

1. transition-property:

transition-property属性指定CSS属性发生变化时的过渡效果(注意,不是所有css属性都支持过渡),过渡属性取值如下:

none:没有属性会获得过渡效果。

all:所有属性都将获得过渡效果。

property:定义应用过渡效果的 CSS 属性名称列表,列表以逗号分隔。

例:

element {/*单个属性*/transition-property:width;/*属性名称列表*/transition-property:width, height;/*全部支持过渡的属性*/transition-property:all;
}

2. transition-duration:

transition-duration 属性规定完成过渡效果需要花费的时间(以秒或毫秒计)

例:

element {transition-duration: 2s;transition-duration: 200ms;
}

3. transition–timing-function:

transition-timing-function:属性指定切换效果的速度。此属性允许一个过渡效果,以改变其持续时间的速度,取值:

linear: 规定以相同速度开始至结束的过渡效果(等于 cubic-bezier(0,0,1,1))。

ease: 规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,1))。

ease-in: 规定以慢速开始的过渡效果(等于 cubic-bezier(0.42,0,1,1))。

ease-out: 规定以慢速结束的过渡效果(等于 cubic-bezier(0,0,0.58,1))。

ease-in-out: 规定以慢速开始和结束的过渡效果(等于 cubic-bezier(0.42,0,0.58,1))。

cubic-bezier(n,n,n,n): 在 cubic-bezier 函数中定义自己的值。可能的值是 0 至 1 之间的数值。

补充最后一个贝塞尔曲线速度曲线生成网站:https://cubic-bezier.com/

写法:

element {transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|cubic-bezier(n,n,n,n);
}

4. transition-delay:

transition-delay 属性指定何时将开始切换效果。transition-delay值是指以秒为单位(S)或毫秒(ms)

例:

element {transition-delay: 5s;transition-delay: 20000ms;
}

5. 简写

直接使用transition属性即可实现简写,写法如下

transition: property duration timing-function delay;

实现效果

步入正题,该如何实现开头的效果呢,话不多说,直接上代码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><title>Title</title><style>ul {display: flex;}ul li {display: flex;justify-content: space-around;align-items: center;position: relative;list-style: none;width: 200px;height: 140px;margin: 80px 20px;background-color: #fcfcfc;border-radius: 20px;border: 2px solid #ccc;}ul li .index {width: 40px;height: 40px;background-color: cornflowerblue;text-align: center;line-height: 40px;transition: all 0.8s;border-radius: 50%;}ul li:hover {cursor: pointer;border-radius: #000;background-color: #f4f4f4;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.12);border: 2px solid #333;}ul li:hover .index {color: #fff;background-color: crimson;transform: rotate(-360deg);}.dog {position: absolute;width: 100px;height: 100px;border-radius: 50%;transition: all cubic-bezier(0, 0.7, 0.37, 1.35) 0.8s;opacity: 0;z-index: -1;}.dog img {width: 100%;height: 100%;}ul li:hover .dog {transform: translate(90px, -92px) rotate(20deg);opacity: 1;}.keyframes {display: none;width: 200px;height: 200px;animation: fadep 3s infinite linear;}</style></head><body><ul><li><div class="dog"><img src="./img/扁平头像-boy 02.png" alt="" /></div><div class="index">1</div>生活不止眼前的苟且</li><li><div class="dog"><img src="./img/扁平头像-boy 03.png" alt="" /></div><div class="index">2</div>生活不止眼前的苟且</li><li><div class="dog"><img src="./img/扁平头像-girl 06.png" alt="" /></div><div class="index">3</div>生活不止眼前的苟且</li></ul></body>
</html>

代码可以直接运行,记得改自己的图片地址

CSS3过渡动画实现hover人物弹出炫酷效果案例相关推荐

  1. 60行代码出炫酷效果之 python语音控制电脑壁纸切换

    前言 大家早好.午好.晚好吖 ❤ ~欢迎光临本文章 电脑大家有吧!手大家有吧!今天!! 就由我带领大家用区区60行代码打造一款语音壁纸切换器程序!!! 单纯的桌面有时候会让人觉得单调,那么~ 让大家能 ...

  2. 用css写出炫酷效果 !!

    https://juejin.cn/post/7002829486806794276

  3. css3圆角360度转动画,target,框架集,css3过渡动画,css3圆角-阴影-透明度,运动曲线,图片文字遮罩,变形...

    target 模拟后台服务器 框架集 frameset和body不合,所以如果用frameset就不能有body标签 利用框架可以把浏览器窗口划分为若干个区域,每个区域就是一个框架,在其中分别显 示不 ...

  4. html列表太多转为下滑菜单,利用CSS过渡属性Transition制作缓缓弹出的纯CSS下拉菜单...

    利用CSS过渡属性Transition制作缓缓弹出的纯CSS下拉菜单 以往文章里面讲了使用CSS的position属性定位结合display制作下拉弹出菜单,名为<纯CSS制作下拉导航菜单> ...

  5. 基于jQuery鼠标点击弹出登陆框效果

    基于jQuery鼠标点击弹出登陆框效果.这是一款扁平样式风格的jQuery弹出层登陆框特效.效果图如下: 在线预览    源码下载 实现的代码. html代码: <input type=&quo ...

  6. js ajax 点击遮罩层,jQuery弹出遮罩层效果完整示例

    本文实例讲述了jQuery弹出遮罩层效果.分享给大家供大家参考,具体如下: /p> "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transition ...

  7. html border阴影效果_一篇文章教会你使用html+css3制作炫酷效果

    [一.项目背景] 在浏览一些网站的时候,经常会看到很多的炫酷的效果去装饰页面,使它看起来更高端大气一些.比如,艺龙就采用了图片上加载文字,点击图片使把对应的图片放大,使用户清晰,直观的看到内容.这种效 ...

  8. 幻灯片制作软件Movavi Slideshow Maker让你制作出炫酷幻灯片

    幻灯片制作软件Movavi Slideshow Maker让你制作出炫酷幻灯片!Movavi Slideshow Maker 5 for Mac可以为您的视频添加以添加各种特效.声音.特效.文字.滤镜 ...

  9. 公开课丨硬核vue实战:码出炫酷宇宙星系

    在前端行业,有句「黑话」是这么说的:不会Vue的前端不是合格的前端工程师!Vue 和其他前端框架相比,在结构.样式.业务分离等方面更清晰彻底,以其独有的优势受到开发人员追捧. 今晚,黑马程序员金牌讲师 ...

最新文章

  1. autosar can协议栈 源码解读_我用一晚上时间给女朋友讲懂CAN总线的AUTOSAR网络管理...
  2. 2011年7个最佳的Linux发行版
  3. 【Linux】1.shell各个命令
  4. 非常实用的 Python 库,推一次火一次
  5. QT示例:基于TCP 点对多Socket通讯(server,clients)
  6. 10进制小数转化为任意进制小数
  7. [P5172] Sum
  8. 2018CUMCM(数学建模国赛)_B——智能RGV的动态调度策略
  9. 生成条形码(jsbarcode、vue-barcode)
  10. ★★★HEU_KMS_Activator_v7.5 (附详细说明文档)
  11. 使用Glide切换图片时闪动
  12. jsp中你必须记住的379
  13. 天真贝叶斯学习机 | TiDB Hackathon 优秀项目分享
  14. 电脑root,360超级ROOT
  15. 推荐一个视频网站-播布客
  16. AhMyth远程控制手机实验
  17. 机器视觉学习系列四:身份证识别
  18. PIM-SM--理论详解
  19. 项目成本管理名词解析
  20. DirectX9.0 入门手册

热门文章

  1. map clear java_Java Map clear()用法及代码示例
  2. jdk版本越高越好吗_jdk是不是版本越新越好
  3. MTK6580芯片核心板规格资料
  4. mysql federated 缺点_MySQL存储引擎--------Federated最佳实战
  5. EasyUI datagrid detailview
  6. Jeecg-boot字典翻译改造
  7. SQLAlchemy 多条件筛选
  8. Ubuntu安装上的vmlinux在哪里?
  9. 浪漫烟花html,【2021跨年】最浪漫的烟花程序,送给新的一年的自己!(源码)...
  10. Assert.assertEquals作用