【css动画】向下的动态箭头

前言

使用css实现一组向下的动态箭头效果,如下图
请添加图片描述

思路

1.使用svg画箭头
2.设置@keyframes,主要是每个箭头加不同的延时。

代码

      <div  class="down-arrow">
        <svg id="more-arrows">
          <polygon
            class="arrow-top"
            points="37.6,27.9 1.8,1.3 3.3,0 37.6,25.3 71.9,0 73.7,1.3 "
          />
          <polygon
            class="arrow-middle"
            points="37.6,45.8 0.8,18.7 4.4,16.4 37.6,41.2 71.2,16.4 74.5,18.7 "
          />
          <polygon
            class="arrow-bottom"
            points="37.6,64 0,36.1 5.1,32.8 37.6,56.8 70.4,32.8 75.5,36.1 "
          />
        </svg>
      </div>

.down-arrow {
    position: absolute;
    top: 90%;
    left: 50%;
    transform: translate(-50%, -50%);

    /* Arrow & Hover Animation */
    #more-arrows {
      width: 75px;
      height: 65px;
      transform: scale(0.4);
    }

    @keyframes arrow-animation {
      0% {
        fill: #d9dadb;
        opacity: 0.5;
      }

      33.33% {
        fill: #d9dadb;
        opacity: 0.75;
      }

      66.66% {
        fill: #d9dadb;
        opacity: 1;
      }

      100% {
        fill: #d9dadb;
        opacity: 0.75;
      }
    }

    polygon.arrow-top {
      animation: arrow-animation 1s linear infinite;
    }

    polygon.arrow-middle {
      animation: arrow-animation 1s linear infinite 1.3s;
    }

    polygon.arrow-bottom {
      animation: arrow-animation 1s linear infinite 2.5s;
    }
  }

参考

Css写一个会动的箭头 实现的是:使用border画的单个箭头,@keyframes做上下弹动的动画。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值