当前位置:首页 > CSS

css loading制作

2026-02-12 19:03:33CSS

CSS Loading 动画制作方法

通过CSS可以创建多种加载动画效果,以下是几种常见实现方式:

旋转动画 利用@keyframestransform属性实现旋转效果:

.loader {
  width: 50px;
  height: 50px;
  border: 5px solid #f3f3f3;
  border-top: 5px solid #3498db;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

点状加载动画 通过伪元素和延迟动画创建三点跳动效果:

.dot-loader {
  display: flex;
  justify-content: center;
  gap: 8px;
}
.dot-loader div {
  width: 12px;
  height: 12px;
  background: #333;
  border-radius: 50%;
  animation: bounce 1s infinite ease-in-out;
}
.dot-loader div:nth-child(2) {
  animation-delay: 0.2s;
}
.dot-loader div:nth-child(3) {
  animation-delay: 0.4s;
}
@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-15px); }
}

进度条加载 线性进度条动画实现:

css loading制作

.progress-loader {
  width: 100%;
  height: 4px;
  background: #e0e0e0;
  position: relative;
  overflow: hidden;
}
.progress-loader::before {
  content: '';
  position: absolute;
  height: 100%;
  width: 30%;
  background: #4285f4;
  animation: progress 2s linear infinite;
}
@keyframes progress {
  0% { left: -30%; }
  100% { left: 100%; }
}

骨架屏加载 内容加载前的占位效果:

.skeleton {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
}
@keyframes shimmer {
  0% { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

实现技巧

性能优化 使用will-change属性提升动画性能:

.loader {
  will-change: transform;
}

响应式设计 通过vw/vh单位使加载动画适应不同屏幕:

css loading制作

.loader {
  width: 10vw;
  height: 10vw;
}

颜色变量 使用CSS变量方便主题切换:

:root {
  --loader-color: #3498db;
}
.loader {
  border-top-color: var(--loader-color);
}

进阶效果

3D旋转加载 添加透视效果实现三维旋转:

.cube-loader {
  width: 40px;
  height: 40px;
  transform-style: preserve-3d;
  animation: rotate3d 2s infinite ease;
}
@keyframes rotate3d {
  0% { transform: rotateX(0) rotateY(0); }
  100% { transform: rotateX(360deg) rotateY(360deg); }
}

自定义动画曲线 使用cubic-bezier调整动画节奏:

.loader {
  animation: spin 1s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite;
}

标签: cssloading
分享给朋友:

相关文章

css按钮制作

css按钮制作

基础按钮样式 使用CSS创建基础按钮需要定义padding、background-color、border和border-radius等属性。以下是一个简单的按钮样式示例: .button {…

用css制作表格

用css制作表格

使用CSS制作表格 CSS可以用来样式化HTML表格,使其更具视觉吸引力和功能性。以下是几种常见的方法: 基础表格样式 通过CSS可以调整表格的边框、间距和颜色: <table>…

css制作便签

css制作便签

CSS制作便签的方法 使用CSS可以轻松创建具有便签效果的样式,以下是一种常见的实现方式: HTML结构 <div class="note"> <h3>便签标题<…

css制作旋转

css制作旋转

CSS旋转的实现方法 CSS提供了多种方式实现元素的旋转效果,主要通过transform属性配合旋转函数完成。以下是常见的旋转实现方式: 使用rotate()函数 transform: rotate…

css导航栏制作

css导航栏制作

CSS导航栏制作方法 水平导航栏 使用display: inline-block或flexbox实现水平导航栏。设置背景色、内边距和悬停效果增强交互性。 .navbar { backgroun…

css样式制作

css样式制作

CSS样式制作基础 CSS(层叠样式表)用于控制网页的视觉呈现。通过CSS可以定义字体、颜色、布局等样式。 选择器与属性 /* 标签选择器 */ p { color: blue; font…