基本每个网站都会有自己的历史展示,例如重要事迹,年份纪要等等,一般都是通过时间轴来进行展示。分享一个时间轴的制作代码,全部通过css来实现,后期也可以增加动画效果,让交互效果更好。
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>纯css自适应高度时间线</title>
<style type="text/css">
*{
padding: 0;
margin: 0;
font-family: Arial;
list-style: none;
}
.line-year{
position: absolute;
color: #189cfb;
font-size: 20px;
left: -50px;
top: 50%;
transform: translateY(-4px);
}
#list {
margin: 0 4px 0;
margin-left: 100px;
}
#list>li{
position: relative;
padding-left: 40px;
padding-top: 4px;
}
#list img {
height: 80px;
margin-top: 5px;
}
/*左侧边线*/
#list>li:before {
content: "";
display: inline-block;
position: absolute;
left: 0;
width: 1px;
height: 100%;
border-right: 1px solid #ccc;
left: 19px;
z-index: 1;
}
#list>li:first-child:before {
height: 50%;
top: 50%;
}
#list>li:last-child:before {
height: 50%;
}
/*小灰点*/
#list>li:after {
content: "";
display: inline-block;
position: absolute;
width: 9px;
height: 9px;
background-color: #aaa;
border-radius: 50%;
left: 16px;
top: 50%;
margin-top: -2px;
z-index: 1;
}
/*蓝色圆点*/
#list>li.line-active:after {
box-sizing: border-box;
width: 16px;
height: 16px;
background-color: #3d93fd;
border: 4px solid #88bdfe;
border-radius: 8px;
left: 12px;
box-shadow: 0 0 0 3px #d8e9ff;
z-index: 2;
}
.list-out {
padding: 10px;
}
.list-time {
color: #cacaca;
}
.list-content div{
min-height: 30px;
}
.purple{
color: #884888;
}
.red{
color: #f00;
}
</style>
</head>
<body>
<ul id="list">
<li class="line-active">
<div class="list-out">
<div class="list-time">
2018-03-08 17:22
</div>
<div class="line-year">
2018
</div>
<div class="list-content">
[ver 1.0]
<br />
<p class="fc666 fsize15 padtop5">千呼万唤始出来</p>
</div>
</div>
</li>
<li>
<div class="list-out">
<div class="list-time">
2018-03-08 17:23
</div>
<div class="list-content">
[ver 1.1]
<br />
<p class="fc666 fsize15 padtop5">最是那一低头的温柔,恰是海棠花不胜凉风的娇羞~</p>
</div>
</div>
</div>
<li>
<div class="list-out">
<div class="list-time">
2018-04-24 17:03
</div>
<div class="list-content">
[重要版本更新]
<br />
<p class="fc666 fsize15 padtop5">1.集成了管理权权限<br />2.加入专栏功能<br />3.日志加入图片,优化显示效果</p>
<a href="http://diumx.com" target="_blank"><img src="http://img2.imgtn.bdimg.com/it/u=2014294909,1775473357&fm=26&gp=0.jpg" alt="" class="padtop10 padrig10" /></a>
<a href="http://diumx.com" target="_blank"><img src="http://img1.imgtn.bdimg.com/it/u=2619291635,3689986962&fm=26&gp=0.jpg" alt="" class="padtop10 padrig10" /></a>
</div>
</div>
</li>
<li>
<div class="list-out">
<div class="list-time">
2018-07-03 10:59
</div>
<div class="list-content">
[注册用户取得成就]
<br />
<p class="fc666 fsize15 padtop5">1.融资300万<br />2.商城注册用户达到20万<br />3.累计成交单量50万,均单数额200元</p>
</div>
</div>
</li>
<li class="line-active">
<div class="list-out">
<div class="list-time">
2018-03-08 17:22
</div>
<div class="line-year red">
2019
</div>
<div class="list-content">
[ver 1.0]
<br />
<p class="fc666 fsize15 padtop5">千呼万唤始出来,犹抱琵琶半遮面</p>
</div>
</div>
</li>
<li>
<div class="list-out">
<div class="list-time">
2018-03-08 17:23
</div>
<div class="list-content">
[ver 1.1]
<br />
<p class="fc666 fsize15 padtop5">最是那一低头的温柔,恰是海棠花不胜凉风的娇羞~</p>
</div>
</div>
</div>
<li>
<div class="list-out">
<div class="list-time">
2018-04-24 17:03
</div>
<div class="list-content">
[重要版本更新]
<br />
<p class="fc666 fsize15 padtop5">1.集成了管理权权限;<br />2.加入专栏功能;<br />3.日志加入图片,优化显示效果</p>
<a href="http://diumx.com" target="_blank"><img src="http://img2.imgtn.bdimg.com/it/u=2014294909,1775473357&fm=26&gp=0.jpg" alt="" class="padtop10 padrig10" /></a>
</div>
</div>
</li>
<li class="line-active">
<div class="list-out">
<div class="list-time">
2018-03-08 17:22
</div>
<div class="line-year purple">
2020
</div>
<div class="list-content">
[ver 1.0]
<br />
<p class="fc666 fsize15 padtop5">千呼万唤始出来</p>
</div>
</div>
</li>
<li>
<div class="list-out">
<div class="list-time">
2018-03-08 17:23
</div>
<div class="list-content">
[ver 1.1]
<br />
<p class="fc666 fsize15 padtop5">最是那一低头的温柔,恰是海棠花不胜凉风的娇羞~</p>
</div>
</div>
</div>
<li>
<div class="list-out">
<div class="list-time">
2018-04-24 17:03
</div>
<div class="list-content">
[重要版本更新]
<br />
<p class="fc666 fsize15 padtop5">1.集成了管理权权限<br />2.加入专栏功能<br />3.日志加入图片,优化显示效果</p>
<a href="http://diumx.com" target="_blank"><img src="http://img1.imgtn.bdimg.com/it/u=2619291635,3689986962&fm=26&gp=0.jpg" alt="" class="padtop10 padrig10" /></a>
</div>
</div>
</li>
<li>
<div class="list-out">
<div class="list-time">
2018-07-03 10:59
</div>
<div class="list-content">
[注册用户取得成就]
<br />
<p class="fc666 fsize15 padtop5">1.融资300万<br />2.商城注册用户达到20万<br />3.累计成交单量50万,均单数额200元</p>
</div>
</div>
</li>
</ul>
</body>
</html>
通过代码可以看到,css的设置并不多,在使用的时候主要注意HTML结构。
总的结构是ul>li,而给li添加了line-activ类名则是设置年份的圆点,其他则是该年份中的内容;在每个li中,通过div.list-out来承载内容,其中里面又分为两部分:div.list-time为设置事件发生时间,div.list-content为事件主要内容。
效果如下图所示: