仲灏小栈 仲灏小栈
首页
大前端
后端&运维
其他技术
生活
关于我
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

仲灏

诚意, 正心, 格物, 致知
首页
大前端
后端&运维
其他技术
生活
关于我
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 《前端项目基础建设》
  • HTML&CSS

    • Scss语言学习实用心得
    • H5 标签使用场景
    • css常用命名单词
    • 项目基础建设 css与处理器scss
    • 项目基础建设 CSS公共样式
    • iframe
    • css 变量使用
    • css常见但不常用的属性
    • 躺着旋转动画
      • 目的
      • 实现过程
    • 边框渐变(圆形)
    • float 布局
    • 在 Javascript 和 Sass(或 CSS!)之间共享变量的方法
    • 看不见的html标签
    • 手写css预处理器
    • grid vs flex布局
  • JavaScript&TypeScript

  • Node

  • 构建

  • Vue

  • React

  • 小程序

  • 跨端

  • Electron

  • WebGL&GIS

  • 浏览器

  • 面经

  • 其他

  • 大前端
  • HTML&CSS
仲灏
2022-02-17
目录

躺着旋转动画

# 目的

实现效果如下 3d 下面两个底盘相向旋转

image-20220217103538382

# 实现过程

  • 定义两个平面相向旋转,然后3d x轴旋转一定的角度即可
  • 实现代码如下
    • ​ 封装scss函数 mixin
@mixin round-ani($img, $rx: 60deg, $isReverse: false) {
  transform: rotateX($rx);
  &::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: $img;
    background-size: 100% 100%;
    // animation: round-ani 3s linear infinite;
    @if $isReverse {
      animation-name: -round-ani;
    } @else {
      animation-name: round-ani;
    }
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-duration: 3s;
  }

  @keyframes round-ani {
    0% {
      transform: rotate(0);
    }
    100% {
      transform: rotate(360deg);
    }
  }
  @keyframes -round-ani {
    0% {
      transform: rotate(0);
    }
    100% {
      transform: rotate(-360deg);
    }
  }
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
  • 使用
section {
  ...
  position: relative;       
  .rotate_el {
    height: 200px;
    width: 200px;
    position: absolute;
    left: 50%;
    // transform: translateX(-50%);
    margin-left: -100px;
    top: -36px;
    @include round-ani(url('../../../../../assets/img/monitor/5661645013638_.pic.jpg'));
  }
  .rotate_el2 {
    position: absolute;
    width: 200px;
    height: 200px;
    left: 50%;
    // transform: translateX(-50%);
    margin-left: -100px;
    top: -32px;
    @include round-ani(
      url('../../../../../assets/img/monitor/5671645013638_.pic.jpg'),
      60deg,
      true
    );
  }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
上次更新: 2022/06/05, 20:31:36
css常见但不常用的属性
边框渐变(圆形)

← css常见但不常用的属性 边框渐变(圆形)→

最近更新
01
vim日常使用记录
04-02
02
滑动窗口最大值
04-02
03
有效的字母异位词
04-02
更多文章>
Theme by Vdoing | Copyright © 2021-2025 izhaong | github | 蜀ICP备2021031194号
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式