微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

css3转盘抽奖

CSS3转盘抽奖是一种常见的网页动效,它的实现方式简单,效果醒目。下面将介绍如何使用CSS3制作一个转盘抽奖的效果

.rotate {
  animation: rotation 6s ease-in-out infinite;
}

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

.pointer {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%) rotate(-20deg);
  width: 0;
  height: 0;
  border-top: 25px solid transparent;
  border-bottom: 25px solid transparent;
  border-left: 50px solid #f08d2d;
  border-right: none;
  cursor: pointer;
}

css3转盘抽奖

上述代码中,使用了CSS3的关键帧动画,即@keyframes。通过定义起始状态和目标状态,实现了整个转盘的旋转效果。同时,为了让指针始终指向某个角度,使用了translate和rotate进行定位,并定义了样式。

通过结合HTML和JavaScript实现点击抽奖效果,即使整个转盘抽奖动效更加生动有趣。

var btn = document.getElementById('btn');

btn.onclick = function () {
  var num = Math.random() * 360;
  var result = document.getElementById('result');

  result.innerText = Math.floor(num);
  document.getElementById('outer').style.transformOrigin = 'center center';
  document.getElementById('outer').style.transform = 'rotate(' + num + 'deg)';
}

通过生成随机角度,再通过定义CSS样式,重新设置转盘的位置和角度即可实现点击抽奖效果。这样,我们就能够玩转这个简单有趣的CSS3转盘抽奖了。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。