You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CSS关键帧实现指定时间戳元素不透明度与幻灯片同步切换

纯CSS实现颜色块与轮播同步切换方案

核心逻辑完全对齐现有轮播的40秒总时长、关键帧时间节点,无需JavaScript即可实现颜色块和图片、文本的切换节奏完全匹配。

第一步:补充颜色块基础样式

先给颜色块容器和色块本身加基础布局样式,让所有色块叠放在同一位置,默认保持低透明度:

.color-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
}

.color {
  position: absolute;
  inset: 0;
  opacity: 0.2; /* 非激活状态透明度,可根据设计需求调整为0~1之间的数值 */
  animation-duration: 40s; /* 和轮播动画总时长完全一致 */
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
}

第二步:给每个色块绑定对应动画

4个色块按HTML顺序分别对应4张轮播内容,单独绑定独立的动画名:

/* 第一个色块 对应第一张轮播内容 */
.bluerocratic-bg {
  animation-name: color_slide_1;
}
/* 第二个色块 对应第二张轮播内容 */
.blue-dacnis-bg {
  animation-name: color_slide_2;
}
/* 第三个色块 对应第三张轮播内容 */
.lamiaceae-bg {
  animation-name: color_slide_3;
}
/* 第四个色块 对应第四张轮播内容 */
.acid-pops-bg {
  animation-name: color_slide_4;
}

第三步:编写对齐轮播节奏的关键帧

所有关键帧时间点完全复用现有轮播动画的切换节点,保证淡入淡出和轮播滑动完全同步:

@keyframes color_slide_1 {
  0% { opacity: 1; }
  22.5% { opacity: 1; }
  28.5% { opacity: 0.2; }
  90% { opacity: 0.2; }
  100% { opacity: 1; }
}

@keyframes color_slide_2 {
  0% { opacity: 0.2; }
  22.5% { opacity: 0.2; }
  28.5% { opacity: 1; }
  45% { opacity: 1; }
  51% { opacity: 0.2; }
  100% { opacity: 0.2; }
}

@keyframes color_slide_3 {
  0% { opacity: 0.2; }
  45% { opacity: 0.2; }
  51% { opacity: 1; }
  67.5% { opacity: 1; }
  76.5% { opacity: 0.2; }
  100% { opacity: 0.2; }
}

@keyframes color_slide_4 {
  0% { opacity: 0.2; }
  67.5% { opacity: 0.2; }
  76.5% { opacity: 1; }
  90% { opacity: 1; }
  100% { opacity: 0.2; }
}

兼容说明

如果需要兼容旧版Webkit内核浏览器,参照你原有轮播动画的写法,给每个@keyframes加@-webkit-keyframes前缀,同时给.color上的animation属性加-webkit-前缀即可。

内容的提问来源于stack exchange,提问作者Vogtei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 06:19:28