css基础知识十二:CSS3常见动画有哪些?实现方式?

news2024/10/7 12:18:52

在这里插入图片描述
一、是什么

CSS动画(CSS Animations)是为层叠样式表建议的允许可扩展标记语言(XML)元素使用CSS的动画的模块

即指元素从一种样式逐渐过渡为另一种样式的过程

常见的动画效果有很多,如平移、旋转、缩放等等,复杂动画则是多个简单动画的组合

css实现动画的方式,有如下几种:

  • transition 实现渐变动画
  • transform 转变动画
  • animation 实现自定义动画

二、实现方式

transition 实现渐变动画

transition的属性如下:

  • property:填写需要变化的css属性
  • duration:完成过渡效果需要的时间单位(s或者ms)
  • timing-function:完成效果的速度曲线
  • delay: 动画效果的延迟触发时间

其中timing-function的值有如下:
在这里插入图片描述
注意:并不是所有的属性都能使用过渡的,如display:none<->display:block

举个例子,实现鼠标移动上去发生变化动画效果

<style>
       .base {
            width: 100px;
            height: 100px;
            display: inline-block;
            background-color: #0EA9FF;
            border-width: 5px;
            border-style: solid;
            border-color: #5daf34;
            transition-property: width, height, background-color, border-width;
            transition-duration: 2s;
            transition-timing-function: ease-in;
            transition-delay: 500ms;
        }

        /*简写*/
        /*transition: all 2s ease-in 500ms;*/
        .base:hover {
            width: 200px;
            height: 200px;
            background-color: #5daf34;
            border-width: 10px;
            border-color: #3a8ee6;
        }
</style>
<div class="base"></div>

transform 转变动画

包含四个常用的功能:

  • translate:位移
  • scale:缩放
  • rotate:旋转
  • skew:倾斜

一般配合transition过度使用

注意的是,transform不支持inline元素,使用前把它变成block

举个粟子

<style>
    .base {
        width: 100px;
        height: 100px;
        display: inline-block;
        background-color: #0EA9FF;
        border-width: 5px;
        border-style: solid;
        border-color: #5daf34;
        transition-property: width, height, background-color, border-width;
        transition-duration: 2s;
        transition-timing-function: ease-in;
        transition-delay: 500ms;
    }
    .base2 {
        transform: none;
        transition-property: transform;
        transition-delay: 5ms;
    }

    .base2:hover {
        transform: scale(0.8, 1.5) rotate(35deg) skew(5deg) translate(15px, 25px);
    }
</style>
 <div class="base base2"></div>

可以看到盒子发生了旋转,倾斜,平移,放大

animation 实现自定义动画

animation是由 8 个属性的简写,分别如下:
在这里插入图片描述
CSS 动画只需要定义一些关键的帧,而其余的帧,浏览器会根据计时函数插值计算出来,

通过 @keyframes 来定义关键帧

因此,如果我们想要让元素旋转一圈,只需要定义开始和结束两帧即可:

@keyframes rotate{
    from{
        transform: rotate(0deg);
    }
    to{
        transform: rotate(360deg);
    }
}

from 表示最开始的那一帧,to 表示结束时的那一帧

也可以使用百分比刻画生命周期

@keyframes rotate{
    0%{
        transform: rotate(0deg);
    }
    50%{
        transform: rotate(180deg);
    }
    100%{
        transform: rotate(360deg);
    }
}

定义好了关键帧后,下来就可以直接用它了:

animation: rotate 2s;

三、总结

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/692237.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

服务器技术(三)--Nginx

Nginx介绍 Nginx是什么、适用场景 Nginx是一个高性能的HTTP和反向代理服务器&#xff0c;特点是占有内存少&#xff0c;并发能力强&#xff0c;事实上nginx的并发能力确实在同类型的网页服务器中表现较好。 Nginx专为性能优化而开发&#xff0c;性能是其最重要的考量&#xf…

硬件设计-PLL篇(上)

文章目录 概要整体架构流程技术名词解释技术细节小结 概要 提示&#xff1a;这里可以添加技术概要 锁相环是一种反馈系统&#xff0c;其中电压控制振荡器(VCO) 和相位比较器相互连接&#xff0c;使得振荡器 可以相对于参考信号维持恒定的相位角度。锁相环可用来从固定的低频信…

linux上虚拟机vmware-workstation使用教程

linux上虚拟机vmware-workstation使用教程 一、vmware-workstation安装及卸载二、vmware-workstation基本操作命令4.1 启动和停止服务 本文介绍了在centos上安装vmware-workstation的使用教程。 一、vmware-workstation安装及卸载 本人实战记录&#xff1a;linux上虚拟机vmwa…

数据结构与算法之稀疏数组

稀疏数组 Java 数据结构与算法数据结构简介 稀疏数组&#xff08;sparse array&#xff09;简介二维数组转稀疏数组的思路稀疏数组转为原始的二维数组 Java 数据结构与算法 该学习代码都在&#x1f517;上 数据结构 简介 数据结构包括&#xff1a;线性结构和非线性结构。 线…

多肽药物产业学习笔记

文章目录 0. 背景0.Last 1. 行业初识1.1 行业壁垒1.2 多肽药物的特性及优势1.3 小分子药的特点 多肽药物发现策略多肽药物主要治疗领域罕见病肿瘤 糖尿病(GLP-1 )胃肠道骨科免疫心血管 关于利拉鲁肽X. 几个概念X.1 CXO业务X.1.1 CDMOX.1.2 CMOX.1.3 CRO X.1.4 CMO和CDMO的联系与…

“面试造飞机,上岗拧螺丝“?2023软件测试岗面试真题超全面整理(最新版)

软件测试这个岗位&#xff0c;想要找到一份高薪的工作&#xff0c;离不开繁杂的面试程序&#xff0c;这相信是很多准备应聘软件测试岗的朋友难题&#xff0c;很多已经在职多年的软件测试工程师对于这个岗位面试都谈虎色变&#xff0c;那么&#xff0c;为什么软件测试岗位的面试…

接口测试的目的

目录 前言&#xff1a; 1、接口测试可以确保系统功能的正确性。 2、接口测试可以保证系统的可靠性。 3、接口测试有助于为客户提供最佳的用户体验。 4、接口测试还可以帮助开发人员评估系统的性能。 5、接口测试可以帮助团队提高协作效率。 前言&#xff1a; 接口测试是…

基于STM32设计的汽车修理厂环境监测系统(华为云IOT)

一、前言 生产车间的环境质量监测仅靠传统的手持式仪器仪表及手工记录无法保证数据的即时性和准确性。因此,设计并实现了一种综合传感器技术、无线通信技术和移动应用开发技术的车间环境质量监测系统。 本系统以STM32为主控芯片,外接各种传感器模块采集环境信息,并将采集数…

Windows 下后台启动 jar 包,UTF-8 启动 jar 包

目录 1. Windows 下启动 jar 包2. 设置 cmd 编码3. UTF-8 编码启动 jar 包 1. Windows 下启动 jar 包 前台启动 jar 包&#xff1a; java -jar xxx.jar后台启动 jar 包&#xff1a; javaw -jar xxx.jar后台启动 jar 包脚本&#xff08;start.bat&#xff09;&#xff1a; e…

Django框架之邮件系统,涉及HTML、富文本、附件邮件发送

参考 (892条消息) Django框架之邮件系统&#xff0c;涉及HTML、富文本、附件邮件发送_django邮件系统_李恩泽的技术博客的博客-CSDN博客https://blog.csdn.net/heroiclee/article/details/121406488 发送设置&#xff08;settings.py&#xff09; EMAIL_USE_SSL True # Sec…

通俗易懂讲解CPU、GPU、FPGA的特点

1. CPU vs GPU 大家可以简单的将CPU理解为学识渊博的教授&#xff0c;什么都精通&#xff1b;而GPU则是一堆小学生&#xff0c;只会简单的算数运算。可即使教授再神通广大&#xff0c;也不能一秒钟内计算出500次加减法。因此&#xff0c;对简单重复的计算来说&#xff0c;单单一…

畅聊职场之:作为程序员,不可不知道的银行IT岗位,收藏备选。

程序员向往的银行IT岗 1、引言2、国有商业银行2.1 中国农业银行2.2 中国邮政银行2.3 中国工商银行2.4 中国银行2.5 中国建设银行2.6 中国交通银行 3、股份制商业银行3.1 招商银行3.2 浙商银行3.3 浦发银行3.4 平安银行3.5 渤海银行3.6 中国民生银行3.7 中信银行3.8 中国光大银行…

60 KVM Skylark虚拟机混部-安装和配置

文章目录 60 KVM Skylark虚拟机混部-安装和配置60.1 安装Skylark60.1.1 硬件要求60.1.2 软件要求60.1.3 安装方法 60.2 配置Skylark60.2.1 日志60.2.2 功耗干扰控制60.2.3 LLC/MB干扰控制 60 KVM Skylark虚拟机混部-安装和配置 60.1 安装Skylark 60.1.1 硬件要求 处理器架构…

教你手把手使用 MyBatis 框架

目录 MyBatis 是什么&#xff1f; 配置 MyBatis 开发环境 方法一&#xff1a;创建项目时添加依赖 方法二&#xff1a;创建项目后添加依赖 配置连接字符串 配置 MyBatis 中的 XML 路径 业务代码 添加实体类 添加 Service 添加 Controller 增加&#xff0c;删除和修改…

Spring Boot 中的 @Configuration 注解

Spring Boot 中的 Configuration 注解 在 Spring Boot 中&#xff0c;我们经常使用注解来简化代码&#xff0c;提高效率。其中&#xff0c;Configuration 注解是一个非常重要的注解&#xff0c;它用于声明一个类作为 Spring 应用程序上下文的配置类。 在本文中&#xff0c;我…

CentOS-8 - AppStream 错误:为 repo ‘AppStream‘ 下载元数据失败

刚安装的 CentOS8 系统执行yum命令报错 CentOS-8 - AppStream 为 repo AppStream 下载元数据失败 错误&#xff1a;为 repo AppStream 下载元数据失败 原因&#xff1a;系统默认的yum源的问题…

MySQL MHA 单主架构 主从切换 高可用

MHA (Master High AvailabilityManager and tools for MySQL) 目前在MySQL高可用方面是一个相对成熟的解决方案&#xff0c;它是由日本人youshimaton采用Perl语言编写的一个脚本管理工具。目前MHA主要支持一主多从的架构&#xff0c;要搭建MHA,要求一个复制集群必须最少有3台数…

基于java+swing+mysql选课管理系统V2.0

基于javaswingmysql选课管理系统V2.0 一、系统介绍二、功能展示1.项目骨架2.项目内容3.登陆4.注册界面5、主界面6、添加选课8、修改选课 四、其它1.其他系统实现五.获取源码 一、系统介绍 项目类型&#xff1a;Java SE项目&#xff08;GUI图形界面&#xff09; 项目名称&…

深入浅出设计模式 - 桥接模式

博主介绍&#xff1a; ✌博主从事应用安全和大数据领域&#xff0c;有8年研发经验&#xff0c;5年面试官经验&#xff0c;Java技术专家✌ Java知识图谱点击链接&#xff1a;体系化学习Java&#xff08;Java面试专题&#xff09; &#x1f495;&#x1f495; 感兴趣的同学可以收…

68、基于51单片机语音识别控制小车行走系统设计(程序+原理图+PCB源文件+参考论文+开题报告+任务书+元器件清单等)

摘 要 随着电子工业的发展&#xff0c;具有语音控制功能的小车越来越受到人们的青睐&#xff0c;在人们的日常消费生活中起着不可忽视的作用。目前&#xff0c;声控技术已在很多领域得到使用。 本文对语音控制功能的小车概况做了阐述。在硬件设计方面&#xff0c;本论文以凌阳…