…">
当前位置:首页 > CSS

css制作时间轴

2026-02-27 01:11:50CSS

使用Flexbox布局制作时间轴

HTML结构采用无序列表<ul>包裹多个<li>项目,每个项目包含时间节点和内容:

<ul class="timeline">
  <li>
    <div class="time">2023</div>
    <div class="content">项目启动</div>
  </li>
  <li>
    <div class="time">2024</div>
    <div class="content">版本发布</div>
  </li>
</ul>

CSS样式设置主轴为垂直方向,通过伪元素创建轴线:

css制作时间轴

.timeline {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  position: relative;
  padding-left: 1.5rem;
}
.timeline::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 2px;
  background: #3498db;
}

使用Grid布局实现响应式时间轴

采用CSS Grid实现双列交替布局,适合内容较多场景:

<div class="timeline-grid">
  <div class="event left">
    <h3>阶段一</h3>
    <p>描述内容</p>
  </div>
  <div class="event right">
    <h3>阶段二</h3>
    <p>描述内容</p>
  </div>
</div>

CSS使用grid-template-columns划分区域:

css制作时间轴

.timeline-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  position: relative;
}
.timeline-grid::before {
  content: "";
  position: absolute;
  width: 2px;
  background: #2c3e50;
  left: 50%;
  top: 0;
  bottom: 0;
}
.event {
  padding: 15px;
  border-radius: 6px;
  background: #f8f9fa;
}
.right { grid-column: 2; }
.left { grid-column: 1; }

纯CSS动画时间轴效果

为时间节点添加交互动画,增强视觉体验:

.time {
  position: relative;
  width: 100px;
  padding: 5px;
  background: #e74c3c;
  color: white;
  text-align: center;
  border-radius: 5px;
  transition: transform 0.3s;
}
.time::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -10px;
  width: 0;
  height: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  border-left: 10px solid #e74c3c;
  transform: translateY(-50%);
}
li:hover .time {
  transform: scale(1.1);
}

垂直时间轴与水平时间轴切换

通过媒体查询实现布局响应式变化:

/* 默认垂直布局 */
.timeline-horizontal {
  display: flex;
  flex-direction: column;
}

@media (min-width: 768px) {
  .timeline-horizontal {
    flex-direction: row;
    justify-content: space-between;
  }
  .timeline-horizontal::before {
    width: 100%;
    height: 2px;
    left: 0;
    top: 50%;
  }
  .timeline-horizontal li {
    flex-direction: column;
    align-items: center;
  }
}

标签: 时间css
分享给朋友:

相关文章

css表格制作表格

css表格制作表格

CSS 表格制作方法 使用 CSS 创建表格可以通过多种方式实现,包括原生 HTML 表格元素结合 CSS 样式,或者使用纯 CSS 布局技术(如 Flexbox 或 Grid)模拟表格效果。以下是常…

css制作导航条

css制作导航条

导航条的基本结构 使用HTML的<nav>标签和<ul>列表创建导航条的基本结构。导航项通常包含链接,示例代码如下: <nav> <ul>…

空间css制作

空间css制作

空间 CSS 制作方法 使用 margin 和 padding 控制间距 通过调整 margin(外边距)和 padding(内边距)属性,可以控制元素之间的空间。例如: .element {…

css制作下拉菜单

css制作下拉菜单

使用纯CSS制作下拉菜单 通过HTML和CSS可以创建无需JavaScript的下拉菜单,主要利用:hover伪类和display属性控制显示隐藏。 HTML结构示例: <div class…

java如何获取当前时间

java如何获取当前时间

获取当前时间的方法 在Java中,可以通过多种方式获取当前时间。以下是几种常见的方法: 使用 java.util.Date Date currentDate = new Date(); Syste…

css制作软件

css制作软件

CSS制作工具推荐 在线CSS生成器 CSS Generator:提供多种CSS效果(如阴影、渐变、动画)的实时生成与代码导出。 EnjoyCSS:可视化界面调整参数,自动生成复杂CSS代码…