這篇文章主要為大家展示了“如何使用css實(shí)現(xiàn)3D圖像輪轉(zhuǎn)效果”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“如何使用css實(shí)現(xiàn)3D圖像輪轉(zhuǎn)效果”這篇文章吧。
創(chuàng)新互聯(lián)主要從事成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)扎賚特,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792首先看html文件,div.billboard為效果的容器,利用10個(gè)div.poster分割圖像,每個(gè)poster中有三個(gè)face,分別用來承載三個(gè)圖像。
XML/HTML Code復(fù)制內(nèi)容到剪貼板
CSS文件這里我們用到了sass,用的是scss語法。
CSS Code復(fù)制內(nèi)容到剪貼板
//變量初始化 //圖像分塊個(gè)數(shù),如要更改,html需要進(jìn)行相應(yīng)的修改 $numPoster:10; //輪換圖像個(gè)數(shù),如要更改,html需要進(jìn)行相應(yīng)的修改 $numFace:3; //圖像寬度 $width:600px; //圖像高度 $height:320px; //盒子的設(shè)置 .billboard { width:$width; margin:100px auto; } //圖像條左浮動 .poster { float:left; width:$width/$numPoster; height:$height; } //圖像條面的統(tǒng)一設(shè)置,絕對定位、3d動畫設(shè)置 .face { position:absolute; height:$height; width:$width/$numPoster; transform-origin:50% 50% -17px; backface-visibility: hidden; transform-style:preserve-3d; perspective:350px; } //圖像條面分別設(shè)置背景圖像、動畫 @for $i from 1 through $numFace{ .poster .panel#{$i} { background:url(http://gx.zptc.cn/whqet/img/#{$i}.jpg); transform:transformY(360deg/$numFace*($i - 1)); animation: rotateMe#{$i} 10s infinite; } @keyframes rotateMe#{$i} { 0% { transform:rotateY(360deg/$numFace*($i - 1)); } 9% { transform:rotateY(360deg/$numFace*($i - 1)); } 24% { transform:rotateY(360deg/$numFace*($i)); } 42% { transform:rotateY(360deg/$numFace*($i)); } 57% { transform:rotateY(360deg/$numFace*($i + 1)); } 75% { transform:rotateY(360deg/$numFace*($i + 1)); } 90% { transform:rotateY(360deg/$numFace*($i + 2)); } 100% { transform:rotateY(360deg/$numFace*($i + 2)); } } } //圖像條面的背景偏移 @for $i from 1 through $numPoster { .poster .p#{$i} {background-position:-($width/$numPoster*($i - 1)) top;} }
以上是“如何使用css實(shí)現(xiàn)3D圖像輪轉(zhuǎn)效果”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!