首頁 >web前端 >css教學 >CSS3如何達到全景圖的動畫效果(附程式碼)

CSS3如何達到全景圖的動畫效果(附程式碼)

不言
不言原創
2018-08-22 15:05:272746瀏覽

這篇文章帶給大家的內容是關於CSS3如何實現全景圖的動畫效果(附程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。

基本程式碼

html程式碼:

<div class="panorama"></div>

先定義一些基本的樣式和動畫:

.panorama {
  width: 300px;
  height: 300px;
  background-image: url(http://7vilbi.com1.z0.glb.clouddn.com/blog/6608185829213862083.jpg);
  background-size: auto 100%;
  cursor: pointer;
  animation: panorama 10s linear infinite alternate;
}

@keyframes panorama {
  to {
    background-position: 100% 0;
  }
}

background-size: auto 100% ; 這段程式碼的意思是讓圖片的高等於容器的高,並且水平方向自動,也就是圖片最左邊貼著容器左側。

執行動畫的流程是:周而復始、往復交替、線性且時間週期是10s。

手動控制動畫執行

現在我們實現當滑鼠懸浮於圖片時才讓它動起來,滑鼠離開讓它靜止。

需要用到這個屬性animation-play-state: paused | running,它表示動畫的兩個狀態:暫停運行# 。

完整CSS程式碼:

.panorama {
  width: 300px;
  height: 300px;
  background-image: url(http://7vilbi.com1.z0.glb.clouddn.com/blog/6608185829213862083.jpg);
  background-size: auto 100%;
  cursor: pointer;
  animation: panorama 10s linear infinite alternate;
  animation-play-state: paused;
}

.panorama:hover,
.panorama:focus {
  animation-play-state: running;
}

@keyframes panorama {
  to {
    background-position: 100% 0;
  }
}

相關推薦:

#如何使用純CSS3實作圖片輪播的效果

如何使用純CSS實現彩虹條紋文字的效果(附程式碼)

#

以上是CSS3如何達到全景圖的動畫效果(附程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn