图片触及翻转效果 css3

图片触及翻转效果 css3

实现图片由左向右飞入回到最初设定位置 ,鼠标浮上去旋转显示另一张图片效果;

html:

     

<!DOCTYPE HTML>
<html>
    <head>
        <meta http-equiv="content-type" content="text/html"; charset="utf-8" />
        <title>图片翻转CSS3</title>
    
    </head>
    <body>
        <div class="page">
            <ul id="box">
                <li>
                    <div class="div1">
                        <img src="Images/m.png" alt=""/></div>
                </li>
                <li>
                    <span></span><div class="div2">
                        <img src="Images/w.png" alt=""/></div>
                </li>
                <li>
                    <span></span><div class="div3">
                        <img src="Images/k.png" alt=""/></div>
                </li>
                <li>
                    <span></span><div class="div4">
                        <img src="Images/t.png" alt=""/></div>
                </li>
            </ul>
        </div>
       
    </body>
</html>

 

2. css部分:

@-webkit-keyframes "mixovMove"
        {
   
            0%
            {
                -webkit-animation-timing-function:ease;
                left:-300px;
                -webkit-transform:rotateY(0deg) scale(0);
                opacity:0;
            }
            50%
            {
   
                left:700px;
                -webkit-transform:rotateY(0deg) scale(0.4);
                opacity:1;
            }
            100%
            {
   
                -webkit-transform:rotateY(360deg) scale(1);
            }
        }
        html
        {
   
            height:100%; margin:0 auto; position:relative;
        }
        body
        {
   
            background:url(Images/miaov.jpg) no-repeat center 0; margin:0 auto; overflow:hidden; padding-top:128px;
        }
        ul
        {
   
            margin:0; padding:0;
        }
        li
        {
   
            list-style:none;
        }
        .page
        {
   
            height:615px; background:url(Images/1-bg.png) no-repeat;position:relative;overflow:hidden; -webkit-transform-style:preserve-3d;-webkit-perspective:100;  margin:0 auto; width:1024px; /*子元素获得透视效果perspective 属性只影响 3D 转换元素。*/
        }
        #box
        {
   
            width:760px; height:170px; position:absolute; top:150px; left:132px;
        }
        li
        {
   
            float:left; margin:0 10px; width:170px; height:170px; position:relative;
        }
        #box div
        {
   
            width:170px; height:170px; -webkit-transform:translateZ(-100px) rotateY(0deg); -webkit-transition:300ms -webkit-transform linear;
        }
        #box span
        {
   
            position:absolute; left:0; top:0; width:170px; height:170px;
        }
        #box img
        {
   
            display:none; -webkit-transform:rotateY(180deg);
        }
        .div1
        {
   
            background:url(Images/c.png) no-repeat;
        }
        .div2
        {
   
            background:url(Images/s-1.png) no-repeat;
        }
        .div3
        {
   
            background:url(Images/s-2.png) no-repeat;
        }
        .div4
        {
   
            background:url(Images/3.png) no-repeat;
        }

3.js部分: 

<script>
            window.onload = function () {
   
                var oBox = document.getElementById("box");
                var aLi = oBox.getElementsByTagName("li");
                var aImg = oBox.getElementsByTagName("img");
                var aDiv = oBox.getElementsByTagName("div");
                for (var i = 0; i < aLi.length; i++) { 
                    aLi[i].left = aLi[i].offsetLeft;
                    aLi[i].style.left = "-200px";
                    aLi[i].style.top = "0";
                    aLi[i].index = i;
                    aLi[i].oTimer = null;
                    aLi[i].style["WebkitTransform"] = "rotateY(0deg) scale(0)";
                }
                for (var i = 0; i < aLi.length; i++) 
                {
   
                    aLi[i].style.position = "absolute";
                    move(aLi[i], 300 * i); 
                    aLi[i].onmouseover = function () {
                        var oBj = this;
                       // debugger;
                        clearTimeout(oBj.oTimer);
                        oBj.oTimer = setTimeout(function () {
                            aImg[oBj.index].style.display = "block";
                            aDiv[oBj.index].style["WebkitTransform"] = "rotateY(180deg)";  //后执行
                        }, 290);
                        aDiv[oBj.index].style["WebkitTransform"] = "rotateY(90deg)"; //先执行
                    };
                    aLi[i].onmouseout = function ()
                    {
   
                        var oBj = this;
                        clearTimeout(oBj.oTimer);
                        oBj.oTimer = setTimeout(function () {
                            aImg[oBj.index].style.display = "none";
                            aDiv[oBj.index].style["WebkitTransform"] = "rotateY(0deg)";
                        }, 295);
                        aDiv[oBj.index].style["WebkitTransform"] = "rotateY(90deg)";
                    }

                }
            };

            function move(obj, iTime)
            {
   
                var oTimer = null;
                oTimer = setTimeout(function () {
                    obj.style.left = obj.left + "px";
                    obj.style["WebkitTransform"] = "rotateY(0deg) scale(1)";
                    obj.style["WebkitAnimationName"] = "mixovMove";
                    obj.style["WebkitAnimationDuration"] = "2s";

                },iTime)
            }
        </script>

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110093.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 求圆周率python_用python算圆周率的步骤

    求圆周率python_用python算圆周率的步骤Python你知道多少?教你玩转Python变量与常量!变量与常量变量:在程序运行过程中,值会发生变化的量常量:在程序运行过程中,值不会发生变化的量无论是变量还是常量,在创建时都会在内存中开辟一块空间,用于保存它的值。这里有一点需要注意的是,在python中是不需要声明类型的。这是根据Python的动态语言特性而来。变量可以直接使用,而不需要提…文章诸葛青云h2019-04-28997浏览量蒙…

    2025年11月5日
    5
  • linux命令chmod -R 755 解析

    linux命令chmod -R 755 解析chmod是Linux下设置文件权限的命令,后面的数字表示不同用户或用户组的权限。后面根的一般是三个数字:第一个数字表示文件所有者的权限第二个数字表示与文件所有者同属一个用户组的其他用户的权限第三个

    2022年7月1日
    28
  • 可以连接服务器无法发送邮件 诛仙,诛仙管理员连接Gdeliveryd服务器发送邮件的Java实现…[通俗易懂]

    可以连接服务器无法发送邮件 诛仙,诛仙管理员连接Gdeliveryd服务器发送邮件的Java实现…[通俗易懂]诛仙管理员连接Gdeliveryd服务器发送邮件的Java实现2016-05-08·Mr.Xia4580次浏览连接Gdeliveryd服务器,可以通过Socket建立邮件信息,向角色发送带有物品装备的邮件,Socket是一个和语言无关的协议,大多数语言比如C/C++/PHP/VB等都支持Socket,这里使用Java实现,适用于诛仙2和诛仙3诛仙给角色发送物品装备邮件的代码,通过Socket连接…

    2022年7月19日
    17
  • labview怎么做成应用程序(labview程序识别形状)

    labview是一款领先的图形化提供设计软件,labview也是一种图形化的编程语言的开发环境,labview更是NI设计平台的核心。历经不断创新,发布了版本labview2019,提供了最佳的解决方案,让用户轻松利用数据快速做出明智的决策。labview2016同样是一款可以帮助工程师完成从设计到测试等一系列步骤以及开发大中小型系统的图形化编程平台,软件以前所未有的程度集成了现有传统软件、IP和…

    2022年4月14日
    80
  • sql语句的各种模糊查询语句

    sql语句的各种模糊查询语句一般模糊语句如下:SELECT字段FROM表WHERE某字段Like条件其中关于条件,SQL提供了四种匹配模式:1、%:表示任意0个或多个字符。可匹配任意类型和长度的字符,有些情况下若是中文,请使用两个百分号(%%)表示。比如SELECT*FROM[user]WHEREu_nameLIKE‘%三%’将会把u_name为“张三”,“张猫三”、“三脚猫”,“唐三藏”等等有“

    2022年5月13日
    48
  • Unity3D 虚拟现实开发(一)[通俗易懂]

    Unity3D 虚拟现实开发(一)[通俗易懂]大家好,这是我第一篇文章,之前做房地产虚拟现实工作,是时候总结一下制作经验了,现在想将简单的制作流程及设计到的问题整理出来,供大家参考。Unity3D软件安装。以2018.2.14例访问地址:https://unity3d.com/cn/get-unity/download/archive?_ga=2.194947693.1768064749.1541907838-1070007498…

    2022年9月13日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号