当前位置:首页 > CSS

css制作弹幕

2026-02-27 08:22:52CSS

CSS制作弹幕效果

弹幕效果可以通过CSS动画和HTML结合实现,以下是一个完整的实现方法:

HTML结构

创建一个包含弹幕内容的容器:

<div class="danmu-container">
  <div class="danmu">第一条弹幕</div>
  <div class="danmu">第二条弹幕</div>
  <div class="danmu">第三条弹幕</div>
</div>

CSS样式

设置弹幕的基本样式和动画效果:

.danmu-container {
  position: relative;
  width: 100%;
  height: 300px;
  overflow: hidden;
  background-color: #000;
}

.danmu {
  position: absolute;
  white-space: nowrap;
  color: #fff;
  font-size: 16px;
  text-shadow: 1px 1px 2px #000;
  animation: danmu-move 10s linear;
}

@keyframes danmu-move {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}

随机位置

通过JavaScript为每条弹幕设置不同的垂直位置:

document.querySelectorAll('.danmu').forEach(el => {
  const top = Math.random() * 250;
  el.style.top = `${top}px`;
});

高级优化

增加弹幕颜色和速度变化:

.danmu:nth-child(3n) {
  color: #ff0;
}

.danmu:nth-child(3n+1) {
  color: #f0f;
}

.danmu:nth-child(3n+2) {
  animation-duration: 8s;
}

动态添加弹幕

使用JavaScript动态添加新弹幕:

css制作弹幕

function addDanmu(text) {
  const container = document.querySelector('.danmu-container');
  const danmu = document.createElement('div');
  danmu.className = 'danmu';
  danmu.textContent = text;
  danmu.style.top = `${Math.random() * 250}px`;
  container.appendChild(danmu);

  setTimeout(() => {
    danmu.remove();
  }, 10000);
}

注意事项

  1. 弹幕容器需要设置overflow: hidden防止内容溢出
  2. 使用white-space: nowrap确保文本不换行
  3. 动画时间可以根据需要调整
  4. 动态添加弹幕时注意内存管理,及时移除已完成动画的元素

这种方法创建的弹幕效果可以用于视频网站、直播平台等场景,通过调整CSS和JavaScript参数可以实现各种不同的视觉效果。

标签: 弹幕css
分享给朋友:

相关文章

css雪碧图制作

css雪碧图制作

CSS雪碧图制作方法 CSS雪碧图(CSS Sprite)是一种将多个小图标或背景图像合并到一张大图中的技术,通过减少HTTP请求提升网页性能。以下是制作和使用雪碧图的详细方法: 准备图像素材 收集…

css右导航栏制作

css右导航栏制作

CSS右导航栏制作方法 固定定位法 使用position: fixed将导航栏固定在视窗右侧,结合right和top属性控制位置。示例代码: .right-navbar { position:…

使用css制作同心圆

使用css制作同心圆

使用 CSS 制作同心圆 同心圆可以通过嵌套多个圆形元素并利用 CSS 的定位和样式属性实现。以下是几种常见方法: 方法一:使用绝对定位和多个 div 通过嵌套多个 div 元素,设置相同的圆心位置…

css 制作

css 制作

CSS 制作基础 CSS(层叠样式表)用于控制网页的样式和布局。通过CSS,可以定义字体、颜色、间距、背景等视觉效果,使HTML内容更具吸引力。 内联样式 直接在HTML元素的style属性中编写C…

css导航条制作

css导航条制作

水平导航条制作 使用display: inline-block或flexbox布局创建水平导航条。设置背景色、内边距和悬停效果增强交互性。 <nav> <ul class="h…

css 制作表单

css 制作表单

使用CSS制作表单的基本方法 创建表单时,HTML负责结构,CSS负责样式。表单元素包括输入框、按钮、下拉菜单等,通过CSS可以统一风格并提升用户体验。 HTML结构示例 <form cla…