首页 > 其他分享 >CSS|动画与效果

CSS|动画与效果

时间:2023-07-06 10:46:00浏览次数:34  
标签:box 动画 效果 ease 100px transform width CSS

一. 过渡

1 什么是过渡

过渡可以为一个元素在不同状态之间切换的时候定义不同的过渡效果

2 应用场景

当鼠标hover的时候, 有一个明显的突出效果, 但是又不会显得特别生硬

transition.gif

3 使用

1) 语法

transition: 属性 时长 缓动函数

  • 属性: 可以是具体的某个属性, 或者是全部(all)
  • 时长: 变化持续时间
  • 缓动函数:
    • ease: 相对于匀速,中间快,两头慢
    • ease-in: 相对于匀速,开始的时候慢,之后快
    • ease-out: 相对于匀速,开始时快,结束时候间慢
    • ease-in-out: 开始慢, 中间加速, 结束慢
    • linear: 一直匀速
<iframe class="interactive is-default-height" data-readystate="complete" height="200" loading="lazy" src="https://interactive-examples.mdn.mozilla.net/pages/css/transition.html" style="height: 375px; width: 765.725px; background-color: rgba(249, 249, 251, 1); margin: 0 auto; display: block" title="MDN Web Docs Interactive Example"> </iframe>

2) 示例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      #box {
        width: 200px;
        height: 100px;
        background-color: skyblue;
        transition: width 1s ease-in-out;
      }
      #box:hover {
        width: 100px;
      }
    </style>
  </head>
  <body>
    <div id="box"></div>
  </body>
</html>

二. 变换

变换可以是二维, 也可以是三维.

这里, 主要给大家介绍基础的二维变换, 主要包括

  • 平移
  • 缩放
  • 旋转

1 平移

transform: translate

  • 沿x轴(水平)方向移动
  • 沿y轴(垂直)方向移动

示例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      #box {
        width: 100px;
        height: 100px;
        background-color: skyblue;
        transform: translate(100px, 100px);
      }
    </style>
  </head>
  <body>
    <div id="box"></div>
  </body>
</html>

2 缩放

transform: scale

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      #box {
        width: 100px;
        height: 100px;
        background-color: skyblue;
        transform: scale(1.1);
      }
    </style>
  </head>
  <body>
    <div id="box"></div>
  </body>
</html>

可以配合transition使用

示例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      #box {
        width: 100px;
        height: 100px;
        background-color: skyblue;
        transition: all 1s ease;
      }
      #box:hover {
        transform: scale(1.1);
      }
    </style>
  </head>
  <body>
    <div id="box"></div>
  </body>
</html>

3 旋转

transform: rotate

示例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      #box {
        width: 100px;
        height: 100px;
        background-color: skyblue;
        transition: all 0.5s ease;
      }
      #box:hover {
        transform: rotate(180deg);
      }
    </style>
  </head>
  <body>
    <div id="box">内容</div>
  </body>
</html>

三. 动画

CSS动画包括两个部分:

  1. 描述动画的样式规则: 相关属性animation(动画播放器)
  2. 用于指定动画开始、结束以及中间点样式的关键帧: 相关属性@keyframes(动画内容)

1 animation

  • name: 动画名称
  • duration: 动画持续时间
  • easing-function: 缓动函数
  • delay: 延迟
  • count: 次数(infinite)

2 关键帧

示例

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      @keyframes move {
        0% {
          transform: translateX(0px);
        }
        100% {
          transform: translateX(100px);
        }
      }
      #box {
        width: 100px;
        height: 100px;
        background-color: skyblue;
        animation: move 3s ease 0s infinite alternate;
      }
    </style>
  </head>
  <body>
    <div id="box"></div>
  </body>
</html>

标签:box,动画,效果,ease,100px,transform,width,CSS
From: https://www.cnblogs.com/tangjielin/p/17531444.html

相关文章

  • [css]选择器,匹配以某个字符开头或结尾
    div[class$="-btn"]:active{opacity:.8}<divclass="user-btn"></div>可匹配到div,class为“-btn”结尾的元素div:[id^="item-"]{color:red}<divid="item-op"></div>可匹配到div,id为“item-”开头的元素......
  • HTML&CSS
    HTMLHTML是一门语言,所有的网页都是用HTML这门语言编写出来的HTML(HyperTextMarkupLanguage):超文本标记语言 超文本:超越了文本的限制,比普通文本更强大。除了文字信息,还可以定义图片、音频、视频等内容 标记语言:由标签构成的语言HTML运行在浏览器上,HTML标签由浏览器......
  • Jquery操作元素的属性和css
    <buttonid="problem_chart_search"type="confirm"style="margin:03em;color:#fff;font-size:.75em;padding:2px10px;">搜索</button>//1、改属性$('#problem_chart_search').attr("disabled","disa......
  • WPF 在MVVM模式下应用动画
    一个简单的需求:当程序发生异常时候,在界面上动画显示异常信息。这个需求看似简单,只需要try……catch到异常,然后把异常的信息写入界面就OK了。但在MVVM时,就不是这么简单了。MVVM模式下,追求前后端的分离。然后catch到的异常,也只能在后台代码中。如果传递到前台呢?这自然就想到了Bin......
  • AE脚本丨自适应底栏边框文字标题动画 Box It v1.0&使用教程
    这个AE脚本BoxIt主要是用于快速创建复杂的动态文本框,非常适合下第三标题、标签、聊天气泡、多个文本框等。 去下载它的主要特点有:1.简单易用,无需键入任何代码,通过简单的拖放和调整参数即可创建动态文本框2.包含多种预设选项,如简单、标准、粗体、标签、聊天气泡等......
  • CSS|Flex布局
    演示动图来源:GitHub一.什么是flex布局是一种专门的CSS一维(水平/垂直)布局方案位置(定性)大小(定量)怎么研究位置和大小借助坐标系(平面直角坐标系)水平轴:主轴垂直轴:交叉轴二.区分flex容器和flex项目1)什么是flex容器启用flex布局方案的元素2)如何......
  • HTML5、CSS3
    ​ 1.HTML5是什么?有哪些新特性?有哪些新增标签?如何让低版本的IE支持HTML5新标签HTML5是超文本标记语言的第五次重新修订,2014年10月29日标准规范制定完成。HTML5的设计目的是为了在移动设备上支持多媒体。HTML5的新特性:用于绘画:canvas元素用于媒体回访:video和audio......
  • WPF 使用border绘制出只显示四个直角的效果
    前段时间为项目做了个人脸识别登录的功能,但无奈本人功底有限(样式没有那么让老板满意),最后请了个UI工程师重新设计了一份。UI设计的效果开发再去实现的过程(懂的都懂),最后居然卡在了一个直角边框上。搜寻了很多资料居然没有着相关的样式,这个也是踩坑了挺久。这里奉上结果的代码<Bord......
  • css文本&布局属性
    1.writing-mode(协作模式):块内容(段落)在页面的流程方式  horizontal-tb(默认):水平内容,从上到下  vertical-lr:垂直内容,从左到右  vertical-rl:垂直内容,从右到左2.direction(方向):内联内容(字符)如何在屏幕上流动  ltr(默认):从左到右  rtl:右到左3.flex(弹性盒子)-物理属......
  • 前端Vue自定义轮播图视频播放组件 仿京东商品详情轮播图视频Video播放效果 可图片预览
    前端Vue自定义轮播图视频播放组件仿京东商品详情轮播图视频Video播放,可图片预览,下载完整代码请访问uni-app插件市场地址:https://ext.dcloud.net.cn/plugin?id=13325效果图如下:cc-videoSwiper使用方法<!--goodsData:轮播图视频数据 @setShowVideo:视频按钮点击事件-......