CSS写一个旋转的正方体

 绿色的是不旋转的,红色的是可以旋转的

介绍一个网站,写动画的网站

提前找到符合需求的动画,打开控制台,复制他的代码就行。方便又好用

https://animista.net/

 代码是React的,请自行转换

绿色正方体的代码

<div className={styles.cubeNormal}>
 <div className={styles.side + ' ' + styles.front}></div>
 <div className={styles.side + ' ' + styles.back}></div>
 <div className={styles.side + ' ' + styles.right}></div>
 <div className={styles.side + ' ' + styles.left}></div>
 <div className={styles.side + ' ' + styles.top}></div>
 <div className={styles.side + ' ' + styles.bottom}></div>
</div>

 

.cubeNormal {
  position: relative;
  width: 40px;
  height: 40px;
  transform-style: preserve-3d;
  transform: rotateX(30deg) rotateY(30deg);
  .side {
    position: absolute;
    width: 36px;
    height: 40px;
    background: rgba(8, 241, 19, 0.6);
    border: 1px solid rgba(219, 215, 227, 0.5);
  }
  .front {
    transform: translateZ(18px);
  }
  .back {
    transform: translateZ(-18px);
  }
  .right {
    transform: rotateY(-90deg) translateZ(18px);
  }
  .left {
    transform: rotateY(-90deg) translateZ(-18px);
  }
  .top {
    transform: rotateX(90deg) translateZ(18px);
  }
  .bottom {
    transform: rotateX(90deg) translateZ(-18px);
  }
}

红色旋转体的代码

<div className={styles.cube}>
 <div className={styles.face + ' ' + styles.front}>
   <img src={item?.value === 1 ? alarmViewImgList[0] : alarmViewImgList[1]} alt="" width={42} />
 </div>
 <div className={styles.face + ' ' + styles.back}>
    <img src={item?.value === 1 ? alarmViewImgList[0] : alarmViewImgList[1]} alt="" width={42} />
</div>
  <div className={styles.face + ' ' + styles.right}>
     <img src={item?.value === 1 ? alarmViewImgList[0] : alarmViewImgList[1]} alt="" width={42} />
 </div>
<div className={styles.face + ' ' + styles.left}>
  <img src={item?.value === 1 ? alarmViewImgList[0] : alarmViewImgList[1]} alt="" width={42} />
  </div>
<div className={styles.face + ' ' + styles.top}>
<img src={item?.value === 1 ? alarmViewImgList[0] : alarmViewImgList[1]} alt="" width={42} />
  </div>
  <div className={styles.face + ' ' + styles.bottom}>
<img src={item?.value === 1 ? alarmViewImgList[0] : alarmViewImgList[1]} alt="" width={42} />
 </div>
</div>

 background-image 这个属性代码就是颜色设置,如果用图片的话可以删除,如果要使用颜色的话,设置这个属性。

.cube {
  position: relative;
  width: 44px;
  height: 40px;
  transform-style: preserve-3d;
  transform: translateZ(-70px) rotateX(50deg);
  animation: rotate-90-vertical-fwd 1s cubic-bezier(0.250, 0.460, 0.450, 0.940) infinite both;
  .face {
    display: block;
    position: absolute;
    width: 44px;
    height: 44px;
  }
  .front {
    transform: rotateY(0deg) translateZ(22px);
    background-image: radial-gradient(rgba(255, 255, 0, 0.5), rgba(255, 0, 0, 0.83));
  }
  .back {
    transform: rotateY(0) translateZ(22px);
    background-image: radial-gradient(rgba(255, 255, 0, 0.8), rgba(255, 0, 0, 0.83));
  }
  .right {
    transform: rotateY(-90deg) translateZ(22px);
    background-image: radial-gradient(rgba(255, 255, 0, 0.8), rgba(255, 0, 0, 0.83));
  }
  .left {
    transform: rotateY(-90deg) translateZ(22px);
    background-image: radial-gradient(rgba(255, 255, 0, 0.8), rgba(255, 0, 0, 0.83));
  }
  .top {
    transform: rotateX(90deg) translateZ(22px);
    background-image: radial-gradient(rgba(255, 255, 0, 0.8), rgba(255, 0, 0, 0.83));
  }
  .bottom {
    transform: rotateX(90deg) translateZ(22px);
    background-image: radial-gradient(rgba(255, 255, 0, 0.8), rgba(255, 0, 0, 0.83));
  }
}


@keyframes rotate-90-vertical-fwd {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(90deg);
  }
}

相关推荐

  1. 一个在创建css文件之后初始化样式

    2024-07-20 07:52:04       29 阅读
  2. css不知道宽度,如何绘制一个正方形

    2024-07-20 07:52:04       29 阅读
  3. 使用vue2一个太极图,并且点击旋转

    2024-07-20 07:52:04       42 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 07:52:04       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 07:52:04       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 07:52:04       45 阅读
  4. Python语言-面向对象

    2024-07-20 07:52:04       55 阅读

热门阅读

  1. 探索Transformer:依存句法分析的新纪元

    2024-07-20 07:52:04       21 阅读
  2. AI学习指南机器学习篇-t-SNE的优缺点

    2024-07-20 07:52:04       10 阅读
  3. 部署django

    2024-07-20 07:52:04       16 阅读
  4. Leetcode 202. 快乐数

    2024-07-20 07:52:04       18 阅读
  5. bug等级和优先级

    2024-07-20 07:52:04       16 阅读
  6. Perl与数据库交互:深入理解DBI模块

    2024-07-20 07:52:04       17 阅读
  7. Apache Kylin

    2024-07-20 07:52:04       12 阅读