当前位置:首页 > CSS

css制作轨迹

2026-04-01 10:48:18CSS

CSS 制作轨迹的方法

使用 CSS 可以创建各种动态轨迹效果,如运动路径、动画轨迹等。以下是几种常见的方法:

使用 @keyframesanimation

通过 @keyframes 定义动画关键帧,结合 animation 属性实现元素沿轨迹运动。

css制作轨迹

.trajectory {
  width: 50px;
  height: 50px;
  background-color: red;
  position: absolute;
  animation: move 5s linear infinite;
}

@keyframes move {
  0% {
    left: 0;
    top: 0;
  }
  25% {
    left: 100px;
    top: 100px;
  }
  50% {
    left: 200px;
    top: 50px;
  }
  100% {
    left: 300px;
    top: 200px;
  }
}

使用 transformtranslate

通过 transform 属性中的 translate 实现平滑的位移效果。

.trajectory {
  width: 50px;
  height: 50px;
  background-color: blue;
  position: absolute;
  animation: translate 4s ease-in-out infinite;
}

@keyframes translate {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(200px, 100px);
  }
  100% {
    transform: translate(0, 0);
  }
}

使用 motion-path(实验性功能)

CSS 的 motion-path 属性允许元素沿着 SVG 路径运动。

css制作轨迹

.trajectory {
  width: 50px;
  height: 50px;
  background-color: green;
  position: absolute;
  offset-path: path("M 0 0 L 100 100 L 200 0");
  animation: move-path 3s linear infinite;
}

@keyframes move-path {
  0% {
    offset-distance: 0%;
  }
  100% {
    offset-distance: 100%;
  }
}

使用 transition 和 JavaScript

通过 JavaScript 动态改变元素的位置,结合 CSS transition 实现平滑轨迹效果。

.trajectory {
  width: 50px;
  height: 50px;
  background-color: purple;
  position: absolute;
  transition: all 1s ease;
}
const element = document.querySelector('.trajectory');
let x = 0;
let y = 0;

setInterval(() => {
  x += 10;
  y += Math.sin(x / 20) * 10;
  element.style.left = `${x}px`;
  element.style.top = `${y}px`;
}, 100);

使用 box-shadow 创建轨迹痕迹

通过 box-shadow 记录元素的运动轨迹。

.trajectory {
  width: 10px;
  height: 10px;
  background-color: orange;
  border-radius: 50%;
  position: absolute;
  animation: move-and-trace 5s linear infinite;
  box-shadow: 0 0 0 0 transparent;
}

@keyframes move-and-trace {
  0% {
    left: 0;
    top: 0;
    box-shadow: 0 0 0 0 transparent;
  }
  50% {
    left: 200px;
    top: 100px;
    box-shadow: 0 0 10px 5px rgba(255, 165, 0, 0.5);
  }
  100% {
    left: 400px;
    top: 0;
    box-shadow: 0 0 20px 10px rgba(255, 165, 0, 0);
  }
}

以上方法可以根据需求灵活组合,实现更复杂的轨迹效果。

标签: 轨迹css
分享给朋友:

相关文章

css制作下拉导航条

css制作下拉导航条

使用纯CSS制作下拉导航条 HTML结构部分需要包含导航主菜单和子菜单项,通常使用嵌套的无序列表(<ul>和<li>)实现: <nav class="dropdown-…

css怎么制作三角形

css怎么制作三角形

使用边框制作三角形 通过设置元素的边框宽度和颜色,可以创建不同方向的三角形。将元素的宽度和高度设为0,利用边框的透明属性实现。 .triangle-up { width: 0; height…

制作css外部

制作css外部

创建CSS外部文件的方法 新建一个纯文本文件,将文件扩展名改为.css,例如styles.css。确保文件内容只包含CSS代码,不包含HTML标签。 编写CSS内容 在CSS文件中直接编写样式规则,…

min.css制作

min.css制作

使用 min.css 制作轻量级样式 min.css 是一个极简的 CSS 框架,专注于轻量化和快速加载。以下是如何使用 min.css 进行开发的步骤。 引入 min.css 通过 CDN 直接引…

css尾部制作

css尾部制作

如何制作CSS尾部(页脚) 固定定位法 将页脚固定在页面底部,无论内容多少。使用position: fixed结合bottom: 0实现: footer { position: fixed;…

css制作靶子

css制作靶子

CSS 制作靶子 使用 CSS 可以轻松创建一个靶子效果,主要通过嵌套的圆形元素和背景色实现。以下是实现方法: HTML 结构 <div class="target"> &…