…">
当前位置:首页 > CSS

css打勾动画制作

2026-01-28 15:57:18CSS

CSS打勾动画制作方法

使用CSS制作打勾动画可以通过伪元素和关键帧动画实现,以下是具体实现方式:

HTML结构

<div class="checkmark"></div>

基础样式

css打勾动画制作

.checkmark {
  width: 50px;
  height: 50px;
  position: relative;
}

.checkmark::before,
.checkmark::after {
  content: "";
  position: absolute;
  background-color: #4CAF50;
}

.checkmark::before {
  width: 5px;
  height: 25px;
  left: 15px;
  top: 10px;
  transform: rotate(45deg);
}

.checkmark::after {
  width: 5px;
  height: 45px;
  left: 30px;
  top: 0;
  transform: rotate(-45deg);
}

动画实现方案

方案一:逐段绘制动画

.checkmark {
  width: 50px;
  height: 50px;
}

.checkmark::before {
  animation: drawBefore 0.5s ease-in-out forwards;
}

.checkmark::after {
  animation: drawAfter 0.5s ease-in-out 0.5s forwards;
  height: 0;
}

@keyframes drawBefore {
  0% { height: 0 }
  100% { height: 25px }
}

@keyframes drawAfter {
  0% { height: 0 }
  100% { height: 45px }
}

方案二:SVG路径动画

css打勾动画制作

<svg class="checkmark" viewBox="0 0 52 52">
  <path class="checkmark-path" fill="none" d="M14.1 27.2l7.1 7.2 16.7-16.8"/>
</svg>
.checkmark {
  width: 50px;
  height: 50px;
}

.checkmark-path {
  stroke: #4CAF50;
  stroke-width: 4;
  stroke-dasharray: 100;
  stroke-dashoffset: 100;
  animation: dash 0.5s ease-in-out forwards;
}

@keyframes dash {
  to {
    stroke-dashoffset: 0;
  }
}

进阶效果

弹性动画效果

@keyframes checkmark {
  0% { transform: scale(0) }
  50% { transform: scale(1.2) }
  100% { transform: scale(1) }
}

.checkmark {
  animation: checkmark 0.6s ease-in-out;
}

颜色渐变效果

.checkmark::before,
.checkmark::after {
  background: linear-gradient(to right, #4CAF50, #8BC34A);
}

响应式调整

通过媒体查询调整不同屏幕尺寸下的打勾大小:

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

  .checkmark::before {
    height: 15px;
    left: 9px;
    top: 6px;
  }

  .checkmark::after {
    height: 27px;
    left: 18px;
  }
}

以上方法可根据实际需求组合使用,通过调整动画时间、缓动函数和尺寸参数可获得不同的视觉效果。SVG方案适合需要精细控制路径的场景,而纯CSS方案则更轻量且易于实现。

标签: 动画制作css
分享给朋友:

相关文章

css div 制作导航菜单

css div 制作导航菜单

基本导航菜单结构 使用HTML创建一个简单的导航菜单结构,通常使用<ul>和li>列表实现。每个菜单项用<a>标签包裹以实现链接功能。 <div class="n…

网页制作教程css

网页制作教程css

CSS 基础概念 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。通过将样式与 HTML 结构分离,提升代码可维护性。 CSS 引入方式 内联样式:直接在 HTML 标签中使…

css网站制作

css网站制作

CSS网站制作基础 选择适合的CSS框架或预处理器(如Bootstrap、Tailwind CSS、Sass/Less)能加速开发。现代CSS支持Flexbox和Grid布局,需掌握响应式设计原则。…

css字体制作

css字体制作

使用 @font-face 自定义字体 通过 @font-face 规则引入自定义字体文件(如 .woff, .woff2, .ttf)。需定义字体名称和文件路径: @font-face {…

css制作日历

css制作日历

使用CSS Grid布局制作日历 日历的布局适合使用CSS Grid实现,因其天然的行列结构。以下是一个基础日历的HTML和CSS代码: <div class="calendar">…

css制作六边形

css制作六边形

使用 CSS 制作六边形 方法一:使用 clip-path 属性 通过 clip-path 直接定义六边形的路径,简单高效且支持动画效果。 .hexagon { width: 100px;…