当前位置: 首页 > news >正文

使用原生 CSS 实现轮播

提示:记录工作中遇到的需求及解决办法

文章目录

  • 前言
  • 一、核心新特性
    • 1. ::scroll-button()
    • 2. ::scroll-marker()
  • 二、基础实现步骤
    • 1. 创建滚动容器
    • 2. 添加滚动按钮
    • 3. 集成滚动标记
  • 三、高级功能
    • 1. 滚动驱动动画
    • 2. 状态查询
    • 3. 响应式布局
  • 四、展示


前言

最新!原生CSS也可以实现轮播图了,无需JavaScript!
从 Chrome 135 开始,开发者可以使用 CSS Overflow 5 规范中的新功能来创建滚动和轮播效果(图1~3),而无需使用 JavaScript。这主要通过全新的 ::scroll-button() 和 ::scroll-marker() 功能来实现。
☀️ ::scroll-button():自动生成滚动控制按钮 (上/下/左/右),用于触发滚动容器的滚动行为。
☀️ ::scroll-marker():自动生成导航标记 (如指示点或标签),用于快速跳转到特定滚动位置。


一、核心新特性

1. ::scroll-button()

浏览器原生提供的滚动按钮:

.carousel {/* 添加左右滚动按钮 */&::scroll-button(left){content:"←"; // "向左滚动"}&::scroll-button(right){content: "→"; // "向右滚动"}
}
  • 自动处理交互状态(禁用/激活)
  • 默认滚动容器长度的 85%
  • 支持自定义样式和焦点效果

2. ::scroll-marker()

滚动标记导航系统:

.carousel {scroll-marker-group: after; /* 标记容器位置 */> li::scroll-marker {content
http://www.xdnf.cn/news/306415.html

相关文章:

  • # YOLOv1:开启实时目标检测的新时代
  • Python基础学习-Day17
  • 20. LangChain电商场景:构建智能客服与个性化推荐系统
  • BufferGeometryUtils
  • Qt案例 以单线程或者单生产者多消费者设计模式实现QFTP模块上传文件夹功能
  • 基于GA遗传优化的不同规模城市TSP问题求解算法matlab仿真
  • 如何在 Ubuntu 24.04 本地安装 DeepSeek ?
  • STM32H743单片机实现ADC+DMA多通道检测
  • Python生活手册-Numpy数组索引:从快递柜到咖啡店的数字化生活指南
  • 易境通货代系统:如何用一套系统解决货代多业务场景痛点?
  • 机器学习-简要与数据集加载
  • 影刀RPA中使用AI模型
  • java中hashmap源码解析(jdk1.8)
  • 代码mark:脚本获取包含全角字符的字符串的长度
  • php中serialize和unserialize的用法详解
  • 开源模型应用落地-qwen模型小试-Qwen3-8B-推理加速-vLLM-Docker(二)
  • 鸿蒙NEXT开发动画(风格的弹性缩放加载动画组件)
  • 长实公布新盘案名“花语海” 打造全新“维港都会公园圈”
  • Dubbo(99)如何在区块链系统中应用Dubbo?
  • RLOO:将多次其他回答的平均reward作为baseline
  • [250505] Arch Linux 正式登陆 Linux 的 Windows 子系统
  • 电动金属硬密封蝶阀泄露等级:水、蒸汽、油品介质的零泄漏守护方案-耀圣
  • Relay 算子调用流程
  • Java 函数式编程
  • 高斯计校准的重要性
  • 【C语言】推箱子小游戏
  • 初步认识java
  • 精益数据分析(42/126):移动应用商业模式的深度剖析与实战要点
  • 浏览器存储 Cookie,Local Storage和Session Storage
  • 在 Sheel 中运行 Spark:开启高效数据处理之旅