您现在的位置是:网站首页> 编程资料编程资料

CSS3制作炫酷带方向感应的鼠标滑过图片3D动画纯CSS3实现鼠标滑过按钮动画第二节CSS实现鼠标滑过鼠标点击代码写法纯CSS3实现8组超炫酷鼠标滑过图片动画css实现鼠标滑过五角星高亮效果 纯CSS实现鼠标滑过显示子菜单的二级菜单效果CSS实现鼠标滑过文字弹出一段说明文字无JS代码纯css实现鼠标滑过弹出层效果CSS控制当鼠标滑过时更换图片的效果css实现鼠标滑过改变文字(中文变英文)使用css的filter写鼠标滑过效果的实现示例

2021-09-05 855人已围观

简介 这篇文章主要为大家详细介绍了CSS3制作炫酷带方向感应的鼠标滑过图片3D动画,具有一定的参考价值,并兼容目前最新的各类主流浏览器,感兴趣的小伙伴们可以参考一下

这是一款使用CSS3和一点JS来制作的炫酷带方向感应的鼠标滑过图片3D动画特效。在特效中,当用户的鼠标滑过网格中的图片时,网格中的内容遮罩层会出现3D翻转动画,并且带有方向感应,能够从鼠标进入的方向开始翻转,效果非常的酷。

在线预览    源码下载

使用方法

HTML结构

该方向感应鼠标滑过动画的HTML结构采用无序列表的HTML结构来制作网格布局,每一个

  • 元素是一个网格。每个网格中使用一个元素来进行占位,实际上它是一个图片的小图标。另外div.info是要进行3D翻转的遮罩层。

    XML/HTML Code复制内容到剪贴板
    1. <div class='container'>  
    2.   <ul>  
    3.     <li>  
    4.       <a class='normal' href='#'>  
    5.         <svg viewBox='0 0 80 76' x='0px' y='0px'>  
    6.           <g>  
    7.             <path d='M 68.9708 24.8623 L 60.4554 2.3018 ...... 68.0625 Z'>path>  
    8.           g>  
    9.         svg>  
    10.       a>  
    11.       <div class='info'>  
    12.         <h3>...h3>  
    13.         <p>....p>  
    14.       div>  
    15.     li>  
    16.     ......   
    17.   ul>  
    18. div>      
    19.   

    CSS样式

    整个网格布局使用无序列表来制作,所有的li元素都采用左浮动。

    CSS Code复制内容到剪贴板
    1. ul {   
    2.   padding: 0;   
    3.   margin: 0 0 50px;   
    4. }   
    5. ul:after {   
    6.   content"";   
    7.   display: table;   
    8.   clearboth;   
    9. }   
    10.     
    11. li {   
    12.   positionrelative;   
    13.   floatleft;   
    14.   width200px;   
    15.   height200px;   
    16.   margin5px;   
    17.   padding: 0;   
    18.   list-stylenone;   
    19. }   
    20. li a {   
    21.   displayinline-block;   
    22.   vertical-aligntop;   
    23.   text-decorationnone;   
    24.   border-radius: 4px;   
    25. }      
    26.   

    同时为了制作3D效果,为每一个li元素添加透视属性。

    CSS Code复制内容到剪贴板
    1. li {   
    2.   -webkit-perspective: 400px;   
    3.           perspective: 400px;   
    4. }       

    用于制作3D翻转的遮罩层div.info默认设置为100%的宽度和100%的高度,使用绝对定位,开始时位于左上角位置。然后使用rotate3d()函数将它沿X轴顺时针旋转90度,使其不可见。

    CSS Code复制内容到剪贴板
    1. .info {   
    2.   -webkit-transform: rotate3d(1, 0, 0, 90deg);   
    3.           transform: rotate3d(1, 0, 0, 90deg);   
    4.   width: 100%;   
    5.   height: 100%;   
    6.   padding20px;   
    7.   positionabsolute;   
    8.   top: 0;   
    9.   left: 0;   
    10.   border-radius: 4px;   
    11.   pointer-events: none;   
    12.   background-color: rgba(26, 188, 156, 0.9);   
    13. }       
    14.   

    最后在CSS样式中为鼠标从上下左右4个方向进入和离开时预设了class类,这些class是在鼠标进入网格时,使用JavaScript来检测鼠标的进入方向,然后为其添加相应的class类。

    CSS Code复制内容到剪贴板
    1. .in-top .info {   
    2.   -webkit-transform-origin: 50% 0%;   
    3.           transform-origin: 50% 0%;   
    4.   -webkit-animation: in-top 300ms ease 0ms 1 forwards;   
    5.           animation: in-top 300ms ease 0ms 1 forwards;   
    6. }   
    7.     
    8. .in-rightright .info {   
    9.   -webkit-transform-origin: 100% 0%;   
    10.           transform-origin: 100% 0%;   
    11.   -webkit-animation: in-rightright 300ms ease 0ms 1 forwards;   
    12.           animation: in-rightright 300ms ease 0ms 1 forwards;   
    13. }   
    14.     
    15. .in-bottombottom .info {   
    16.   -webkit-transform-origin: 50% 100%;   
    17.           transform-origin: 50% 100%;   
    18.   -webkit-animation: in-bottombottom 300ms ease 0ms 1 forwards;   
    19.           animation: in-bottombottom 300ms ease 0ms 1 forwards;   
    20. }   
    21.     
    22. .in-left .info {   
    23.   -webkit-transform-origin: 0% 0%;   
    24.           transform-origin: 0% 0%;   
    25.   -webkit-animation: in-left 300ms ease 0ms 1 forwards;   
    26.           animation: in-left 300ms ease 0ms 1 forwards;   
    27. }   
    28.     
    29. .out-top .info {   
    30.   -webkit-transform-origin: 50% 0%;   
    31.           transform-origin: 50% 0%;   
    32.   -webkit-animation: out-top 300ms ease 0ms 1 forwards;   
    33.           animation: out-top 300ms ease 0ms 1 forwards;   
    34. }   
    35.     
    36. .out-rightright .info {   

    相关内容

  • -六神源码网