.bubble {…">
当前位置:首页 > CSS

css制作冒泡

2026-03-11 16:15:43CSS

使用CSS制作冒泡效果

冒泡效果可以通过CSS动画和伪元素实现,以下是一种常见的实现方式:

css制作冒泡

<div class="bubble"></div>
.bubble {
  width: 50px;
  height: 50px;
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  position: relative;
  animation: float 3s ease-in-out infinite;
}

.bubble::before {
  content: '';
  position: absolute;
  width: 15px;
  height: 15px;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 50%;
  top: 10px;
  left: 10px;
}

@keyframes float {
  0% {
    transform: translateY(0) rotate(0deg);
    opacity: 1;
  }
  100% {
    transform: translateY(-100px) rotate(20deg);
    opacity: 0;
  }
}

创建多个随机冒泡

要实现更自然的冒泡效果,可以创建多个随机大小和速度的冒泡:

css制作冒泡

<div class="bubbles-container">
  <div class="bubble"></div>
  <div class="bubble"></div>
  <div class="bubble"></div>
</div>
.bubbles-container {
  position: relative;
  height: 200px;
  overflow: hidden;
}

.bubble {
  position: absolute;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  animation: float linear infinite;
}

/* 为每个气泡设置不同的大小和动画 */
.bubble:nth-child(1) {
  width: 20px;
  height: 20px;
  left: 10%;
  animation-duration: 4s;
}

.bubble:nth-child(2) {
  width: 35px;
  height: 35px;
  left: 40%;
  animation-duration: 6s;
}

.bubble:nth-child(3) {
  width: 15px;
  height: 15px;
  left: 70%;
  animation-duration: 5s;
}

@keyframes float {
  0% {
    transform: translateY(0) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateY(-200px) scale(0.5);
    opacity: 0;
  }
}

添加交互效果的冒泡

可以使用CSS hover伪类为冒泡添加交互效果:

.bubble:hover {
  transform: scale(1.2);
  background-color: rgba(255, 255, 255, 0.9);
  transition: all 0.3s ease;
}

使用CSS变量控制冒泡样式

通过CSS变量可以更方便地控制冒泡的整体样式:

:root {
  --bubble-color: rgba(255, 255, 255, 0.6);
  --bubble-size: 30px;
  --float-distance: 150px;
}

.bubble {
  width: var(--bubble-size);
  height: var(--bubble-size);
  background-color: var(--bubble-color);
  animation: float 3s ease-in-out infinite;
}

@keyframes float {
  to {
    transform: translateY(calc(-1 * var(--float-distance)));
  }
}

标签: css
分享给朋友:

相关文章

css个人简历制作两页

css个人简历制作两页

使用CSS制作两页个人简历 创建两页的个人简历需要合理布局和分页控制,以下是实现方法: HTML基础结构 <!DOCTYPE html> <html lang="zh-CN">…

css制作靶子

css制作靶子

CSS 制作靶子 使用 CSS 可以轻松创建一个靶子效果,主要通过嵌套的圆形元素和背景色实现。以下是实现方法: HTML 结构 <div class="target"> &…

css制作教程

css制作教程

CSS基础入门 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。以下是一个系统化的学习路径: 选择器与基本语法 CSS规则由选择器和声明块组成: 选择器 { 属性: 值;…

css制作图标

css制作图标

使用CSS制作图标的方法 使用伪元素和边框 通过CSS的伪元素和边框属性可以创建简单的几何形状图标。例如,制作一个三角形图标: .triangle { width: 0; heigh…

淘宝css导航栏制作

淘宝css导航栏制作

淘宝CSS导航栏制作 制作类似淘宝的导航栏需要关注几个关键点:结构清晰、响应式设计、悬停效果以及图标使用。以下是具体实现方法: HTML结构 <div class="nav-container…

css sprites制作

css sprites制作

CSS Sprites 制作方法 CSS Sprites 是一种将多个小图标或图片合并成一张大图的技术,通过减少 HTTP 请求提升网页加载性能。 准备工作 需要将多个小图标或图片合并为一张大图,可…