安全下载,经人工审核 精选优质前端模板 支持定制开发咨询 持续更新资源
使用 CSS3 和 Vanilla JS 实现的可折叠时间轴
编号:时间轴

使用 CSS3 和 Vanilla JS 实现的可折叠时间轴

大小 21 KB
总文件 5 个
发布 2024-03-30
更新 2026-01-17
架构 CSS + JS
分类 前端资源 - 日期与时间
目录 结构详情
童哲网
童哲网
 ·  专注前端模板资源分享
人工审核 安全可信

基于 CSS3 和 Vanilla JS 创建可折叠的时间轴,该时间轴支持一键折叠或展开常见时间线项目,也支持单个时间项的折叠与展开,利用该时间轴将帮助你以可视化的组织和交互的方式呈现按时间顺序排列的信息。

下面介绍如何使用 CSS3 和 Vanilla JS 创建可折叠时间轴

1、首先为我们的时间轴设置 HTML 结构。我们需要一个时间线容器元素和每个时间线项的独立元素。每个项目将由标题和主体组成。

<svg display="none">
     <symbol id="arrow">
         <polyline fill="none" points="7 10,12 15,17 10" stroke="currentcolor" stroke-linecap="round"
                   stroke-linejoin="round" stroke-width="2"/>
     </symbol>
 </svg>
 <h1>童哲网发展历程</h1>
 <div class="timeline" id="timeline">
     <div class="btn-group">
         <button class="btn" data-action="expand" type="button">全部展开</button>
         <button class="btn" data-action="collapse" type="button">全部折叠</button>
     </div>
     <div class="timeline__item">
         <div class="timeline__item-header">
             <button aria-controls="item1-ctrld" aria-expanded="false" aria-haspopup="true" aria-labelledby="item1-name"
                     class="timeline__arrow" data-item="1" id="item1" type="button">
                 <svg class="timeline__arrow-icon" height="24px" viewBox="0 0 24 24" width="24px">
                     <use href="#arrow"/>
                 </svg>
             </button>
             <span class="timeline__dot"></span>
             <span class="timeline__meta" id="item1-name">
    <time class="timeline__date" datetime="2023-01-02">2023-01-02</time><br>
    <strong class="timeline__title">网站上线</strong>
</span>
         </div>
         <div aria-hidden="true" aria-labelledby="item1" class="timeline__item-body" id="item1-ctrld" role="region">
             <div class="timeline__item-body-content">
                 <p class="timeline__item-p">🎉🎉🎉,祝贺童哲网上线了
                 </p>
             </div>
         </div>
     </div>
 </div>

2、接下来,让我们在一个单独的 CSS 文件(styles.css)中定义时间线的样式。

/*以下为部分内容,下载后可查阅完整代码*/
.timeline {
	margin: auto;
	padding: 0 1.5em;
	width: 100%;
	max-width: 36em;
}

4.现在,让我们实现 JavaScript 功能,使时间轴可折叠,此脚本将处理用户交互,并作用于时间线项的展开和折叠动画。

/*以下为部分内容,下载后可查阅完整代码*/
window.addEventListener("DOMContentLoaded",() => {
	const ctl = new CollapsibleTimeline("#timeline");
});

最后,你可以在 HTML 文件的 <div id="timeline" class="timeline"> 容器中添加时间线项内容,如下载后的代码所示,每个时间轴项都应有一个标题和一个主体。

模板目录结构

    免责声明

    • 如非特殊说明,本站对本文提供的代码或者素材不拥有任何权利,其版权归原著者拥有。
    • 以上提供的代码或者素材均为作者提供和网友推荐收集整理而来,仅供学习和研究使用。
    • 如有侵犯你版权的,请来信(邮箱:tongzhewangluo@163.com)指出,核实后本站将立即改正。
    • 如有链接无法下载、失效或广告,请通过网站提供的微信联系作者!
    • 以上资源售价只是赞助,不代表代码或者素材本身价格,收取费用仅维持本站的服务器开销。
    • 所有代码素材效果均为演示打包,最终效果请参考演示效果,本站不提供任何技术支持和服务。
    • 代码素材均为虚拟物品,演示和描述无错的情况下,无法进行退换服务。

    最新资源

    会"越轨"的滑块拖动特效(CSS+JS) | 带物理引擎的趣味交互组件

    越轨滑块

    会"越轨"的滑块拖动特效(CSS+JS) | 带物理引擎的趣味交互组件
    健身房网站 HTML 模板 - 3套首页风格 | 响应式健身工作室建站模板

    健神哲

    健身房网站 HTML 模板 - 3套首页风格 | 响应式健身工作室建站模板
    移民签证咨询机构 HTML 模板,Bootstrap 5 响应式设计,适合留学与签证服务网站

    维思塔

    移民签证咨询机构 HTML 模板,Bootstrap 5 响应式设计,适合留学与签证服务网站
    眼科门诊与视力矫正机构专用 HTML 模板,Bootstrap 5 响应式设计,含3套首页风格

    爱普卡

    眼科门诊与视力矫正机构专用 HTML 模板,Bootstrap 5 响应式设计,含3套首页风格
    外卖点餐 PWA 移动端 HTML 模板 | 适合餐厅、外卖平台、云厨房快速搭建类 App 体验的手机网站

    原麦外

    外卖点餐 PWA 移动端 HTML 模板 | 适合餐厅、外卖平台、云厨房快速搭建类 App 体验的手机网站
    AI 图文与视频生成专用 HTML 响应式仪表盘风格网站模板

    艾青晖

    AI 图文与视频生成专用 HTML 响应式仪表盘风格网站模板