您好,登錄后才能下訂單哦!
小編給大家分享一下CSS3如何實現時間軸特效,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
最近打開電腦就能看到極客學院什么新用戶vip免費一個月,就進去看看咯,這里就不說它的課程怎么滴了,里面實戰路徑圖頁面看到了這個效果:
有點像時間軸的趕腳,而且每一塊鼠標懸浮上去也有下拉效果展開介紹截圖信息,就感覺效果還不錯。但感覺這種效果貌似對于動態添加不是很靈活,因為高度不像寬度可以靈活的自適應,故添加得自己一個一個設置。所以很多都是做成展示效果。
當然啦,自己也基于它的這個想法搞了一點簡單點的類似效果,主要還是整個布局效果,具體每一塊內容就不仿造了,而且我自己也加了一下開場動畫,讓它更好玩一些…
先來看看效果吧:
大概效果就是這樣啦,下來廢話不說,還是直接進入主題:
HTML結構:
<div class="timezone"> <div class="time"> <h3>2015-07-02</h3> <div> <p>暴走大事件第一季</p> <ul> </ul> </div> </div> <div class="timeLeft" style="top: 100px;"> <h3>2015-07-02</h3> <div> <p>暴走大事件第二季</p> <ul> </ul> </div> </div>
這里簡化了一下HTML結構,.time類表示在右邊,.timeLeft表示在左邊,然后加點上外邊距就可以了,每一塊里面的內容我就刪減掉了。
CSS樣式代碼如下:
body{ background: #333; } h2{ text-align: center; color:#fff; } .timezone{ width:6px; height: 350px; background: lightblue; margin: 0 auto; margin-top:50px; border-radius: 3px; position: relative; -webkit-animation: heightSlide 2s linear; } @-webkit-keyframes heightSlide{ 0%{ height: 0; } 100%{ height: 350px; } } .timezone:after{ content: '未完待續...'; width: 100px; color:#fff; position: absolute; margin-left: -35px; bottom: -30px; -webkit-animation: showIn 4s ease; } .timezone .time,.timezone .timeLeft{ position: absolute; margin-left: -10px; margin-top:-10px; width:20px; height:20px; border-radius: 50%; border:4px solid rgba(255,255,255,0.5); background: lightblue; -webkit-transition: all 0.5s; -webkit-animation: showIn ease; } .timezone .time:nth-child(1){ -webkit-animation-duration:1s; } .timezone .timeLeft:nth-child(2){ -webkit-animation-duration:1.5s; } .timezone .time:nth-child(3){ -webkit-animation-duration:2s; } .timezone .timeLeft:nth-child(4){ -webkit-animation-duration:2.5s; } @-webkit-keyframes showIn{ 0%,70%{ opacity: 0; } 100%{ opacity: 1; } } .timezone .time h3,.timezone .timeLeft h3{ position: absolute; margin-left: -120px; margin-top: 3px; color:#eee; font-size: 14px; cursor:pointer; -webkit-animation: showIn 3s ease; } .timezone .timeLeft h3{ margin-left: 60px; width: 100px; } .timezone .time:hover,.timezone .timeLeft:hover{ border:4px solid lightblue; background: lemonchiffon; box-shadow: 0 0 2px 2px rgba(255,255,255,0.4); } .timezone .time div,.timezone .timeLeft div{ position: absolute; top:50%; margin-top: -25px; left:50px; width: 300px; height: 50px; background: lightblue; border:3px solid #eee; border-radius: 10px; z-index: 2; overflow: hidden; cursor:pointer; -webkit-animation: showIn 3s ease; -webkit-transition: all 0.5s; } .timezone .timeLeft div{ left:-337px; } .timezone .time div:hover,.timezone .timeLeft div:hover{ height: 170px; } .timezone .time div p,.timezone .timeLeft div p{ color: #fff; font-weight: bold; text-align: center; } .timezone .time:before,.timezone .timeLeft:before{ content: ''; position: absolute; top:0px; left: 32px; width: 0px; height: 0px; border:10px solid transparent; border-right:10px solid #eee; z-index:-1; -webkit-animation: showIn 3s ease; } .timezone .timeLeft:before{ left:-33px; border:10px solid transparent; border-left:10px solid #eee; } .timezone .time div ul,.timezone .timeLeft div ul{ list-style: none; width:300px; padding:5px 0 0; border-top:2px solid #eee; color:#fff; text-align: center; } .timezone .time div li,.timezone .timeLeft div li{ display: inline-block; height: 25px; line-height: 25px; }
此CSS樣式代碼僅供參考,實用性不是很強,而且同樣沒有怎么整理過,主要還是理解一下動畫效果還有整體布局吧。
以上是“CSS3如何實現時間軸特效”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。