当前位置:首页 > CSS

css制作波纹

2026-02-27 07:30:18CSS

使用CSS制作波纹效果

通过CSS的animationtransform属性可以轻松实现波纹效果,以下是两种常见方法:

方法一:利用伪元素和scale动画

通过伪元素创建圆形背景,并用动画控制其缩放和透明度变化。

<div class="ripple-button">点击我</div>
.ripple-button {
  position: relative;
  overflow: hidden;
  padding: 12px 24px;
  background-color: #6200ea;
  color: white;
  border: none;
  cursor: pointer;
}

.ripple-button::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 5px;
  height: 5px;
  background: rgba(255, 255, 255, 0.5);
  opacity: 0;
  border-radius: 50%;
  transform: translate(-50%, -50%) scale(1);
}

.ripple-button:active::after {
  animation: ripple 0.6s ease-out;
}

@keyframes ripple {
  to {
    transform: translate(-50%, -50%) scale(20);
    opacity: 0;
  }
}

方法二:通过JavaScript动态添加波纹元素

结合CSS和JavaScript实现更灵活的交互效果。

css制作波纹

<button class="js-ripple-button">点击触发波纹</button>
.ripple {
  position: absolute;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.7);
  transform: scale(0);
  animation: ripple-animation 0.6s linear;
  pointer-events: none;
}

@keyframes ripple-animation {
  to {
    transform: scale(4);
    opacity: 0;
  }
}
document.querySelector('.js-ripple-button').addEventListener('click', function(e) {
  const ripple = document.createElement('span');
  ripple.classList.add('ripple');
  this.appendChild(ripple);

  const rect = e.target.getBoundingClientRect();
  const x = e.clientX - rect.left;
  const y = e.clientY - rect.top;

  ripple.style.left = `${x}px`;
  ripple.style.top = `${y}px`;

  setTimeout(() => ripple.remove(), 600);
});

关键参数调整

  • 颜色:通过background-color修改波纹颜色。
  • 大小:调整伪元素的初始width/height或JavaScript中的scale值。
  • 速度:修改animation-duration(如0.6s)控制动画时长。
  • 形状border-radius: 50%确保圆形波纹,可改为其他值实现不同形状。

浏览器兼容性

  • 现代浏览器均支持此效果
  • 如需兼容旧版浏览器,需添加-webkit-前缀:
    @-webkit-keyframes ripple { ... }

标签: 波纹css
分享给朋友:

相关文章

网页制作css是什么

网页制作css是什么

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

怎么制作风水罗盘css

怎么制作风水罗盘css

制作风水罗盘CSS 使用CSS创建一个风水罗盘(八卦罗盘)需要结合HTML和CSS技术,通过层叠样式表绘制罗盘的各个部分。以下是实现方法: 基本结构 创建HTML结构,包含罗盘的外圆、内圆、八卦符号…

css制作三行三列表格

css制作三行三列表格

使用HTML和CSS创建三行三列表格 通过HTML的<table>标签结合CSS样式可以轻松实现三行三列的表格结构。 <table class="three-by-three"&g…

css制作网站

css制作网站

基础结构与样式设置 HTML文件需包含基本结构,CSS通过<style>标签内嵌或外链.css文件引入。全局样式重置常用* { margin: 0; padding: 0; }清除默认间距…

制作外置css

制作外置css

创建外置CSS文件 新建一个文本文件,将其命名为style.css。确保文件扩展名为.css,而不是.txt。使用代码编辑器(如VS Code、Sublime Text等)打开该文件进行编辑。 /*…

网页制作css

网页制作css

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