当前位置:首页 > CSS

loading css 制作

2026-02-27 03:58:08CSS

CSS 加载动画制作方法

CSS 加载动画可以通过关键帧动画(@keyframes)和 CSS 属性实现。以下是几种常见的加载动画实现方式。

旋转加载动画

使用 @keyframes 定义一个旋转动画,并将其应用到元素上:

loading css 制作

.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 {
  width: 10px;
  height: 10px;
  background-color: #3498db;
  border-radius: 50%;
  animation: bounce 1.4s infinite ease-in-out;
}

.dot:nth-child(2) {
  animation-delay: 0.2s;
}

.dot:nth-child(3) {
  animation-delay: 0.4s;
}

@keyframes bounce {
  0%, 100% { transform: scale(0); }
  50% { transform: scale(1); }
}

进度条加载动画

使用 @keyframes 实现宽度变化的进度条:

loading css 制作

.progress-loader {
  width: 100%;
  height: 4px;
  background-color: #f3f3f3;
  position: relative;
}

.progress-loader::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 0%;
  background-color: #3498db;
  animation: progress 2s linear infinite;
}

@keyframes progress {
  0% { width: 0%; }
  100% { width: 100%; }
}

波浪加载动画

通过伪元素和 @keyframes 实现波浪效果:

.wave-loader {
  width: 50px;
  height: 50px;
  position: relative;
}

.wave-loader::before,
.wave-loader::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border: 2px solid #3498db;
  border-radius: 50%;
  opacity: 0;
  animation: wave 1.5s linear infinite;
}

.wave-loader::after {
  animation-delay: 0.75s;
}

@keyframes wave {
  0% {
    transform: scale(0.5);
    opacity: 0;
  }
  50% {
    opacity: 0.5;
  }
  100% {
    transform: scale(1.2);
    opacity: 0;
  }
}

优化加载动画性能

  • 使用 transformopacity 代替 widthheight 动画,以提高性能。
  • 限制动画的复杂度和数量,避免过多消耗资源。
  • 使用 will-change 属性提前告知浏览器元素将发生动画变化。
.loader {
  will-change: transform;
}

响应式加载动画

通过媒体查询调整加载动画的大小或速度:

@media (max-width: 768px) {
  .loader {
    width: 30px;
    height: 30px;
    border-width: 3px;
  }
}

以上方法提供了多种 CSS 加载动画的实现方式,可根据需求选择或组合使用。

标签: loadingcss
分享给朋友:

相关文章

css 制作导航

css 制作导航

基础导航栏制作 使用HTML和CSS创建一个水平导航栏。HTML结构通常使用<ul>和<li>标签,CSS负责样式布局。 <nav> <ul clas…

css制作导航条

css制作导航条

导航条的基本结构 使用HTML的<nav>标签和<ul>列表创建导航条的基本结构。导航项通常包含链接,示例代码如下: <nav> <ul>…

css制作春季踏青

css制作春季踏青

使用CSS制作春季踏青主题效果 背景设计 通过渐变背景模拟春日天空,使用柔和的色调如浅蓝、淡绿和粉色。可以添加云朵或小鸟的剪影作为装饰元素。 body { background: linear…

div和css制作

div和css制作

使用 div 和 CSS 制作网页布局 HTML 结构 通过 div 标签划分页面区域,例如头部、主体、侧边栏和页脚: <div class="container"> <di…

网页制作css是什么

网页制作css是什么

CSS的定义与作用 CSS(Cascading Style Sheets,层叠样式表)是一种用于描述网页外观和格式的样式语言。它通过定义HTML元素的布局、颜色、字体等视觉属性,实现内容与表现的分离,…

css制作goole

css制作goole

使用CSS制作Google标志 Google标志由多彩的字母和简洁的字体组成,可以通过CSS的字体属性、颜色渐变和布局来实现。 字体选择 Google标志使用自定义字体"Product Sans"…