返回顶部
首页 > 资讯 > 精选 >CSS3动画特效在活动页中的应用示例
  • 590
分享到

CSS3动画特效在活动页中的应用示例

2023-06-08 05:06:38 590人浏览 八月长安
摘要

这篇文章给大家分享的是有关css3动画特效在活动页中的应用示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。背景在不知不觉中,忙碌的一年将要结束,又到了一年一度的活动期了,为了展现喜庆的节日气氛,活动页面动态效果

这篇文章给大家分享的是有关css3动画特效在活动页中的应用示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

背景

在不知不觉中,忙碌的一年将要结束,又到了一年一度的活动期了,为了展现喜庆的节日气氛,活动页面动态效果必不可少。

先上效果图:

CSS3动画特效在活动页中的应用示例

一、整体分析

从图中可 以看到主要的动态效果有动态指示箭头和漫天飘雪效果,如果偷懒的话并直接使用这张效果图作为背景的话很不可取,因为张图片大小足有 3M多,这对于服务器和用户体验来说简直就是灾难,由于是活动页面访问量自然少不了,在并发量较高的情况下服务器自然不堪重负、同时也心疼用户的流量和用户等待响应的时间,作为一个精益求精的人,我们的原则是能用程序实现的效果坚决不用 gif ,能节省多少资源就节省多少资源。

二、动态指示箭头

从程序实现角度来看,我们首先要做的是封装变化点,将变与不变相分离,图中的五个关卡形式大体一致,每个关卡都有底座和箭头,将关卡封装好后再用数据驱动每个关卡的位置和箭头指示方向。

相关数据如下:

[    {        state: 0,        left: 9,        top: -2,        direction: { rotateZ: 290, color: "#d26754" }    },    {        state: 0,        left: 66,        top: 10,        direction: { rotateZ: 24, color: "#f58351" }    },    {        state: 0,        left: 18,        top: 20,        direction: { rotateZ: 30, color: "#f78351" }    },    {        state: 0,        left: -2,        top: 36.5,        direction: { rotateZ: 295, color: "#e19d47" }    },    {        state: 0,        left: 52,        top: 49.5,        direction: { rotateZ: 293, color: "#e19d47" }    }]

1.动态效果分析

仔细观察效果图后发现,整体是有一个 3D 透视效果,视角并非垂直俯视,而像是 45 °角俯视。首先想到的是强大的 CSS3 的 3D 旋转,箭头效果可分为运行轨道 + 箭头运行效果。这样只需要对轨道做 3D 透视,箭头沿着外层轨道做重复运动就可以了。
 

CSS3动画特效在活动页中的应用示例

具体实现

<div class="item" flex="main:center cross:center":style="{left:item.left+'%',top:item.top+'%'}"v-for="item in items" @click="showReceive(item)">    <div class="bottom" flex="main:center cross:center">        <div class="direction" flex="dir:top" :style="{transfORM:`rotateX(34deg) rotateY(0deg) rotateZ(${item.direction.rotateZ}deg)`}">            <div class="half"></div>            <div class="half track">                <div class="arrow"                :style="{transform: `rotate(${item.direction.rotate}deg`,                right:`${item.direction.right}px`,                'border-color': `${item.direction.color} transparent transparent`                }"></div>            </div>        </div>    </div></div>  .direction {    position: absolute;    width: 20px;    height: 260%;    .half {      flex: 1;    }    .track {      position: relative;      // margin-top: 90px;      margin-top: 2em;      .arrow {        position: absolute;        width: 0;        height: 0;        border: 10px solid;        border-color: red transparent transparent;        animation: dynamicArrow 3000ms infinite linear;      }    }  }@keyframes dynamicArrow {  0% {    opacity: 1;    bottom: 100%;  }  70% {    opacity: 1;  }  90% {    opacity: 0.1;    bottom: -20px;  }  100% {    opacity: 0;  }}

三、漫天飘雪

仔细观察效果图,雪花有大有小、速度有快有慢、位置有近有远、颜色有深有浅雪花整体飘动的方向是从上往下从左到右,并且要下的很均匀。

实现思路

雪花飘动轨道 +雪花飘动效果,将轨道倾斜一定角度后平铺整个屏幕,用数据控制每条轨道的位置、层级、轨道内雪花的大小、运行延迟、运行速度、颜色深浅。为了更直观的看到实现效果,将轨道设置背景色如下图:

CSS3动画特效在活动页中的应用示例

具体实现

<div class="snows">  <div class="s_track" :style="{transform:`rotate(45deg) translate(${snow.deviation}px,${-snow.deviation}px)`,'z-index':snow.zindex}" v-for="snow in snows">      <img class="snow" src="/static/original/img/DoubleDenierActivies/cbp_snow.png" :style="{opacity:snow.opacity,animation: `dynamicSnow ${snow.speed}ms ${snow.delay}ms infinite linear`,width:snow.size*1.14+'px',height:snow.size+'px'}"/>  </div></div>.s_track {  position: absolute;  width: 220%;  // height: 10px;  top: -10px;  transform-origin: 0 0 0;  .snow {    visibility: hidden;    position: absolute;    z-index: 2;    animation: dynamicSnow 2000ms infinite linear;  }}@keyframes dynamicSnow {  0% {    visibility: visible;    top: 0;    left: 0;    transform: rotate(0);  }  100% {    visibility: visible;    top: 100%;    left: 100%;    transform: rotate(360deg);  }}let snows = [],  initCount = 16;for (let i = 0; i < initCount; i++) {  let unit = i - 8,    speed = i > 3 ? i % 3 : i,    size = 0;  speed++;  if (i % 5 == 0) {    size = 10;  } else if (i % 8 == 0) {    size = 20;  } else {    size = Math.random() * 10;  }  snows.push({    deviation: unit * 40, //位置    delay: Math.random() * 1000, //延迟    speed: speed * 3000, //速度    opacity: speed / 4,    size: size,    zindex: size >= 10 ? 4 : 0  });}let snows2 = [];snows.forEach(f => {  snows2.push({    ...f,    deviation: snows[parseInt(Math.random() * initCount)].deviation - 10,    delay: f.delay + 1000 //延迟  });});let snows3 = [];snows.forEach(f => {  snows3.push({    ...f,    deviation: snows[parseInt(Math.random() * initCount)].deviation - 20,    delay: f.delay + 2000 //延迟  });});snows = snows.concat(snows2);snows = snows.concat(snows3);snows.sort((a, b) => a.deviation - b.deviation);this.snows = snows;

感谢各位的阅读!关于“CSS3动画特效在活动页中的应用示例”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: CSS3动画特效在活动页中的应用示例

本文链接: https://lsjlt.com/news/251867.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CSS3动画特效在活动页中的应用示例
    这篇文章给大家分享的是有关CSS3动画特效在活动页中的应用示例的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。背景在不知不觉中,忙碌的一年将要结束,又到了一年一度的活动期了,为了展现喜庆的节日气氛,活动页面动态效果...
    99+
    2023-06-08
  • css3的动画特效之动画序列的示例分析
    这篇文章给大家分享的是有关css3的动画特效之动画序列的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。首先复习一下animation动画添加各种参数(1)infinite...
    99+
    2024-04-02
  • loading动画特效的示例分析
    这篇文章给大家分享的是有关loading动画特效的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。代码示例<!DOCTYPE html> <ht...
    99+
    2024-04-02
  • Css3中6种动画效果的示例分析
    这篇文章主要为大家展示了“Css3中6种动画效果的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Css3中6种动画效果的示例分析”这篇文章吧。1.闪烁效...
    99+
    2024-04-02
  • CSS3动画和HTML5新特性的示例分析
    本文将为大家详细介绍“CSS3动画和HTML5新特性的示例分析”,内容步骤清晰详细,细节处理妥当,而小编每天都会更新不同的知识点,希望这篇“CSS3动画和HTML5新特性的示例分析”能够给你意想不到的收获,请大家跟着小编的思路慢慢深入,具体...
    99+
    2023-06-08
  • html5+css3动画如何在webapp中应用
    今天就跟大家聊聊有关html5+css3动画如何在webapp中应用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。 动...
    99+
    2024-04-02
  • 怎么用纯css3实现炫酷的动画背画特效
    本篇内容介绍了“怎么用纯css3实现炫酷的动画背画特效”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  之...
    99+
    2024-04-02
  • CSS3中怎么实现复选框动画特效
    CSS3中怎么实现复选框动画特效,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。实例代码代码如下:<!DOCTYPE ht...
    99+
    2024-04-02
  • CSS3中怎么实现单选框动画特效
    本篇文章为大家展示了CSS3中怎么实现单选框动画特效,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。<div class="radio-1&...
    99+
    2024-04-02
  • 利用css3实现鼠标经过动画显示详情特效
    本篇内容介绍了“利用css3实现鼠标经过动画显示详情特效”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  ...
    99+
    2024-04-02
  • 怎么用css3制作元旦雪人动画特效
    这篇文章主要介绍“怎么用css3制作元旦雪人动画特效”,在日常操作中,相信很多人在怎么用css3制作元旦雪人动画特效问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用css...
    99+
    2024-04-02
  • 怎么用CSS3实现按钮边框动画特效
    本篇内容主要讲解“怎么用CSS3实现按钮边框动画特效”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用CSS3实现按钮边框动画特效”吧!这是一款效果非常炫酷的...
    99+
    2024-04-02
  • 如何使用css3实现3d旋转动画特效
    这篇文章将为大家详细讲解有关如何使用css3实现3d旋转动画特效,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。代码如下:<!doctype html><...
    99+
    2024-04-02
  • Css3中如何实现hover动画的颜色动画效果
    这篇文章主要为大家展示了“Css3中如何实现hover动画的颜色动画效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Css3中如何实现hover动画的颜色动画...
    99+
    2024-04-02
  • CSS3怎么创建带有反弹特效的动画
    这篇文章主要介绍“CSS3怎么创建带有反弹特效的动画”,在日常操作中,相信很多人在CSS3怎么创建带有反弹特效的动画问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS3怎么...
    99+
    2024-04-02
  • CSS3使用过度动画和缓动效果案例讲解
    transition过渡: 四个小属性 属性 意义 ...
    99+
    2024-04-02
  • Electron应用显示隐藏时展示动画效果实例
    目录最终效果实现思路实现过程总结最终效果 实现思路 窗口设置透明 建立系统托盘 获取托盘坐标,实现应用在托盘上方出现 CSS 里面写上加载和退出的动画 添加加载动画的事件,即给元素...
    99+
    2024-04-02
  • 怎么用CSS3+Sprite实现僵尸行走动画特效
    这篇文章主要介绍“怎么用CSS3+Sprite实现僵尸行走动画特效”,在日常操作中,相信很多人在怎么用CSS3+Sprite实现僵尸行走动画特效问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,...
    99+
    2024-04-02
  • 怎么用CSS3实现炫酷loading加载动画特效
    本篇内容主要讲解“怎么用CSS3实现炫酷loading加载动画特效”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用CSS3实现炫酷loading加载动画特效...
    99+
    2024-04-02
  • 怎么用css3绘制汤勺捞起汤圆的动画特效
    这篇文章主要介绍了怎么用css3绘制汤勺捞起汤圆的动画特效的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用css3绘制汤勺捞起汤圆的动画特效文章都会有所收获,下面我们一起来...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作