码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • css呼吸效果实现


    实现一个图片有规律的大小变化,呈现呼吸效果,怎么用CSS实现这个呼吸效果呢

    一.实现

    CSS实现动态效果可以使用动画( animation)来属性实现,放大缩小效果可以用transform: scale来实现,在这基础上有了动画,就可以设置一个在几秒内的呼吸效果了,然后设置播放次数为infinite(无限),就可以的到想要的效果了.animation 属性是一个简写属性,它有如下几个动画属性

    1.animation属性 

    animation-name:指定要绑定到选择器keyframe的关键帧的名称(eg:testAnimation)
    animation-duration:动画指定需要多少秒或毫秒完成(eg:2s)
    animation-timing-function:设置动画将如何完成一个周期(动画的速度曲线)   ,取值如下:

    linear动画从头到尾的速度是相同的。
    ease默认,动画以低速开始,然后加快,在结束前变慢
    ease-in动画以低速开始
    ease-out动画以低速结束
    ease-in-out动画以低速开始和结束
    steps(int,start|end)

    指定了时间函数中的间隔数量(步长)。有两个参数,第一个参数指定函数的间隔数,该参数是一个正整数(大于 0)。 第二个参数是可选的,表示动画是从时间段的开头连续还是末尾连续。含义分别如下:

    • start:表示直接开始
    • end:默认值,表示戛然而止
    cubic-bezier(n,n,n,n)在 cubic-bezier 函数中自己的值。可能的值是从 0 到 1 的数值

    animation-delay:设置动画在启动前的延迟间隔(eg:2s)
    animation-iteration-count:定义动画的播放次数

    n一个数字,定义应该播放多少次动画
    infinite指定动画应该播放无限次(永远)

    animation-direction:指定是否应该轮流反向播放动画(先执行一遍动画,然后再反向执行一遍动画)

    2.语法  

    animation: name duration timing-function delay iteration-count direction;

    二.案例演示

    1.CSS代码

    1. .test{
    2. width: 200px;
    3. height: 200px;
    4. background-image:url("../src/assets/test.png");
    5. background-repeat: no-repeat;
    6. background-size: contain;
    7. //可以直接使用animation设置
    8. animation: testAnimation 2s ease-in-out infinite;
    9. //也可以单独使用对应的属性设置
    10. animation-name: testAnimation;
    11. animation-duration: 3s;
    12. animation-timing-function: ease-in-out;
    13. animation-iteration-count: infinite;
    14. }
    15. @keyframes testAnimation {
    16. 0%{
    17. transform: scale(0.88);
    18. }
    19. 50%{
    20. transform: scale(1);
    21. }
    22. 100%{
    23. transform: scale(0.88);
    24. }
    25. }

    2.效果展示

    好了,一个简单的呼吸效果就做好了

  • 相关阅读:
    算法学习 | day48/60 两个字符串的删除操作/编辑距离
    【经典算法学习-排序篇】顺序查找 - 作业讲解
    2023腾讯云双11优惠:轻量2核4G5M服务器166元/年,可选3年
    【Rust日报】2022-08-14 Actix Web 的可扩展速率限制中间件
    oracle(PLsql)/mysql 建表
    C++ explicit关键字的作用
    云服务器哪家便宜?教你怎么在AWS免费领一年云服务器(领取篇)
    绘画用电容笔还是触控笔?适合ipad画画的电容笔推荐
    vue学习第五天(9月8号)
    拉代码后npm i 提示代码更改9999+是因为创建代码仓库把node_modules文件提交到了git仓库
  • 原文地址:https://blog.csdn.net/zhoupenghui168/article/details/134310931
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号