当前位置:首页 > CSS

css打勾动画制作

2026-04-01 19:12:13CSS

CSS打勾动画制作方法

使用CSS制作打勾动画可以通过伪元素、关键帧动画和变形属性实现。以下是几种常见方法:

方法一:利用border和transform属性

通过旋转和调整边框实现打勾效果:

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

.checkmark::after {
    content: "";
    position: absolute;
    left: 15px;
    top: 5px;
    width: 15px;
    height: 25px;
    border: solid green;
    border-width: 0 5px 5px 0;
    transform: rotate(45deg);
    animation: fadeIn 0.3s ease-in-out;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

方法二:SVG路径动画

结合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: green;
    stroke-width: 6;
    stroke-dasharray: 1000;
    stroke-dashoffset: 1000;
    animation: draw 0.5s ease-out forwards;
}

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

方法三:纯CSS关键帧动画

通过逐步显示边框实现动画效果:

.checkmark {
    width: 20px;
    height: 40px;
    border-right: 5px solid green;
    border-bottom: 5px solid green;
    transform: rotate(45deg);
    opacity: 0;
    animation: checkmark 0.5s 0.2s ease-out forwards;
}

@keyframes checkmark {
    0% { height: 0; width: 0; opacity: 0; }
    50% { height: 0; width: 20px; opacity: 1; }
    100% { height: 40px; width: 20px; opacity: 1; }
}

方法四:缩放动画

结合缩放和旋转效果:

css打勾动画制作

.checkmark {
    width: 20px;
    height: 40px;
    border-right: 3px solid green;
    border-bottom: 3px solid green;
    transform: rotate(45deg) scale(0);
    transform-origin: bottom left;
    animation: scaleUp 0.3s ease-out forwards;
}

@keyframes scaleUp {
    to { transform: rotate(45deg) scale(1); }
}

实现要点

  • 使用伪元素::after::before创建打勾图形
  • 通过border属性绘制斜线形成打勾形状
  • 应用transform: rotate()调整角度
  • 使用@keyframes控制动画过程
  • 调整stroke-dasharraystroke-dashoffset实现SVG路径动画
  • 合理设置animation-timing-function控制动画节奏

自定义选项

  • 修改颜色:调整border-colorstroke属性值
  • 改变大小:调整元素宽高和边框宽度
  • 调整速度:修改animation-duration
  • 添加延迟:设置animation-delay属性
  • 改变动画类型:替换ease-in-out等时间函数

这些方法均可根据实际需求组合使用或单独实现,适用于表单验证、任务完成提示等场景。

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

相关文章

css如何制作圆

css如何制作圆

使用 border-radius 属性制作圆 通过设置 border-radius 属性为元素添加圆角效果。当 border-radius 的值等于元素宽度和高度的一半时,元素会呈现圆形。 .cir…

css制作教程

css制作教程

CSS 基础概念 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。它与HTML结合使用,HTML负责结构,CSS负责样式。 基本语法结构 CSS规则由选择器和声明块组成: 选择…

css制作六边形

css制作六边形

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

css制作下拉导航条

css制作下拉导航条

使用HTML和CSS创建基础下拉导航条 HTML结构需包含导航项和下拉内容容器: <nav class="navbar"> <ul> <li><…

css 制作字体

css 制作字体

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

css制作彩虹

css制作彩虹

使用CSS线性渐变制作彩虹 通过CSS的linear-gradient属性可以创建彩虹效果。彩虹通常由红、橙、黄、绿、蓝、靛、紫七种颜色组成。 .rainbow { width: 100%;…