栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > Html/CSS > CSS教程

纯css实现3D图像轮转效果

CSS教程 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

纯css实现3D图像轮转效果

本文实例为大家分享了纯css实现3D图像轮转效果的具体代码,供大家参考,具体内容如下

首先看html文件,div.billboard为效果的容器,利用10个div.poster分割图像,每个poster中有三个face,分别用来承载三个图像。

XML/HTML Code复制内容到剪贴板
  1.      
  2.          
  3.         
     
  •         
  •      
  •         
  •      
  •     
  •      
  •          
  •              
  •              
  •              
  •          
  •          
  •              
  •              
  •              
  •          
  •          
  •              
  •              
  •              
  •          
  •          
  •              
  •              
  •              
  •          
  •          
  •              
  •              
  •              
  •          
  •          
  •              
  •              
  •              
  •          
  •          
  •              
  •              
  •              
  •          
  •          
  •              
  •              
  •              
  •          
  •          
  •              
  •              
  •              
  •          
  •      
  • CSS文件这里我们用到了sass,用的是scss语法。

    CSS Code复制内容到剪贴板
    1. //变量初始化     
    2. //图像分块个数,如要更改,html需要进行相应的修改     
    3. $numPoster:10;      
    4.      
    5. //轮换图像个数,如要更改,html需要进行相应的修改     
    6. $numFace:3;      
    7.      
    8. //图像宽度      
    9. $width:600px;      
    10.      
    11. //图像高度      
    12. $height:320px;      
    13.      
    14. //盒子的设置     
    15. .billboard {       
    16.     width:$width;       
    17.     margin:100px auto;       
    18. }      
    19.      
    20. //图像条左浮动      
    21. .poster {       
    22.     float:left;       
    23.     width:$width/$numPoster;       
    24.     height:$height;       
    25. }     
    26.      
    27. //图像条面的统一设置,绝对定位、3d动画设置       
    28. .face {       
    29.     position:absolute;       
    30.     height:$height;       
    31.     width:$width/$numPoster;       
    32.     transform-origin:50% 50% -17px;       
    33.     backface-visibility: hidden;       
    34.     transform-style:preserve-3d;       
    35.     perspective:350px;       
    36. }       
    37.      
    38. //图像条面分别设置背景图像、动画     
    39. @for $i from 1 through $numFace{       
    40.   .poster .panel#{$i} {       
    41.     background:url(http://gx.zptc.cn/whqet/img/#{$i}.jpg);       
    42.     transform:transformY(360deg/$numFace*($i - 1));       
    43.     animation: rotateMe#{$i} 10s infinite;       
    44.   }       
    45.   @keyframes rotateMe#{$i} {       
    46.     0% {       
    47.         transform:rotateY(360deg/$numFace*($i - 1));       
    48.     }       
    49.     9% {       
    50.         transform:rotateY(360deg/$numFace*($i - 1));       
    51.     }       
    52.     24% {       
    53.         transform:rotateY(360deg/$numFace*($i));       
    54.     }       
    55.     42% {       
    56.         transform:rotateY(360deg/$numFace*($i));       
    57.     }       
    58.     57% {       
    59.         transform:rotateY(360deg/$numFace*($i + 1));       
    60.     }       
    61.     75% {       
    62.         transform:rotateY(360deg/$numFace*($i + 1));       
    63.     }       
    64.     90% {       
    65.         transform:rotateY(360deg/$numFace*($i + 2));       
    66.     }       
    67.     100% {       
    68.         transform:rotateY(360deg/$numFace*($i + 2));       
    69.     }       
    70.   }       
    71. }      
    72.      
    73. //图像条面的背景偏移     
    74. @for $i from 1 through $numPoster {       
    75.   .poster .p#{$i} {background-position:-($width/$numPoster*($i - 1)) top;}       
    76. }       
    77.   

    使用sass可以使得代码结构清晰,逻辑性强,请大家研读提升。

    以上就是本文的全部内容,希望对大家的学习有所帮助。

    原文:http://www.cnblogs.com/shouce/p/5256638.html

    转载请注明:文章转载自 www.mshxw.com
    本文地址:https://www.mshxw.com/it/216020.html

    CSS教程相关栏目本月热门文章

    我们一直用心在做
    关于我们 文章归档 网站地图 联系我们

    版权所有 (c)2021-2022 MSHXW.COM

    ICP备案号:晋ICP备2021003244-6号