当前位置:首页 > CSS

css制作心跳效果

2026-03-11 20:35:39CSS

使用CSS动画制作心跳效果

通过CSS的@keyframestransform属性可以轻松实现心跳动画效果。以下是两种常见实现方式:

基础缩放动画

.heartbeat {
  animation: heartbeat 1.5s ease-in-out infinite;
}

@keyframes heartbeat {
  0% { transform: scale(1); }
  14% { transform: scale(1.3); }
  28% { transform: scale(1); }
  42% { transform: scale(1.3); }
  70% { transform: scale(1); }
}

结合阴影增强效果

css制作心跳效果

.pulse {
  width: 100px;
  height: 100px;
  background: #ff4757;
  border-radius: 50%;
  animation: pulse 2s infinite;
}

@keyframes pulse {
  0% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(255, 71, 87, 0.7);
  }
  70% {
    transform: scale(1);
    box-shadow: 0 0 0 10px rgba(255, 71, 87, 0);
  }
  100% {
    transform: scale(0.95);
    box-shadow: 0 0 0 0 rgba(255, 71, 87, 0);
  }
}

实现心脏形状的跳动效果

若要创建真实心脏形状的跳动,可结合SVG和CSS动画:

SVG路径动画

css制作心跳效果

<svg class="heart" viewBox="0 0 32 29.6">
  <path d="M23.6,0c-3.4,0-6.3,2.7-7.6,5.6C14.7,2.7,11.8,0,8.4,0C3.8,0,0,3.8,0,8.4c0,9.4,9.5,11.9,16,21.2
  c6.1-9.3,16-12.1,16-21.2C32,3.8,28.2,0,23.6,0z"/>
</svg>
.heart {
  width: 100px;
  animation: heartbeat 1s infinite;
}

@keyframes heartbeat {
  0% { transform: scale(1); }
  25% { transform: scale(1.1); }
  50% { transform: scale(1); }
  75% { transform: scale(1.1); }
  100% { transform: scale(1); }
}

优化动画性能的技巧

使用will-change属性提前告知浏览器元素会发生变化:

.heart {
  will-change: transform;
}

考虑使用prefers-reduced-motion媒体查询为运动敏感用户提供替代方案:

@media (prefers-reduced-motion: reduce) {
  .heartbeat {
    animation: none;
  }
}

这些方法均可通过调整关键帧百分比和缩放值来改变心跳的节奏和强度,实现从微妙到强烈的各种心跳效果。

标签: 效果css
分享给朋友:

相关文章

vue实现框架效果

vue实现框架效果

Vue 实现框架效果的方法 Vue.js 可以通过多种方式实现框架效果,包括使用内置指令、组件封装或第三方库。以下是几种常见的方法: 使用 Vue 指令实现基础框架效果 通过 Vue 的 v-if、…

网页制作css

网页制作css

CSS 基础语法 CSS(层叠样式表)用于控制网页的样式和布局。基本语法由选择器和声明块组成: 选择器 { 属性: 值; 属性: 值; } 例如: p { color: blu…

css制作教程

css制作教程

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

css sprites制作

css sprites制作

什么是CSS Sprites CSS Sprites是一种将多个小图片合并成一张大图的技术,通过background-position属性来显示需要的部分。这种技术可以减少HTTP请求次数,提升页面加…

css制作圆形

css制作圆形

使用 border-radius 属性 通过设置 border-radius 为 50%,可以将元素变为圆形。元素的宽度和高度需相同,否则会呈现椭圆形。 .circle { widt…

css 制作表单

css 制作表单

使用 CSS 制作表单 表单是网页交互的重要组成部分,通过 CSS 可以美化表单元素,提升用户体验。以下是常见的表单样式设计方法。 基础表单结构 HTML 表单通常包含输入框、标签、按钮等元素。以下…