zoukankan      html  css  js  c++  java
  • 3D魔幻旋转

    对于小白来说,一个炫酷的装x特效是必不可少的,下面教你5分钟成功装x。

    效果图如下:

     很简单,首先我们先定义一个ul标签,然后在里面插入li标签,如下:

    <ul>   
        <li class="top"><img src="C:/Users/User/Desktop/3D-rotate/image/timg1.jpg"></li>
        <li class="bottom"><img src="C:/Users/User/Desktop/3D-rotate/image/timg2.jpg"></li>
        <li class="left"><img src="C:/Users/User/Desktop/3D-rotate/image/timg3.jpg"></li>
        <li class="right"><img src="C:/Users/User/Desktop/3D-rotate/image/timg4.jpg"></li>
        <li class="front"><img src="C:/Users/User/Desktop/3D-rotate/image/timg5.jpg"></li>
        <li class="back"><img src="C:/Users/User/Desktop/3D-rotate/image/timg6.jpg"></li>
    </ul>

    这样就有了雏形,接下来就是css了。如下:

    * {
        margin:0;
        padding:0
    }
    ul {
        transform-style:preserve-3d;
        200px;
        height:200px;
        position:relative;
        margin:150px auto;
        list-style:none;
        animation-name:xz;
        animation-duration:20s;
        animation-iteration-count:infinite;
        animation-timing-function:linear;
    }
    ul:hover {
        animation-play-state:paused;
    }
    li {
        position:absolute;
        left:0;
        top:0;
        200px;
        height:200px;
        background:#ccc;
        opacity:.7;
    }
    li:hover {
        opacity:.3;
    }
    img {
        100%;
        height:100%;
    }
    .top {
        transform:rotateX(90deg) translateZ(100px);
    }
    .bottom {
        transform:rotateX(90deg) translateZ(-100px);
    }
    .left {
        transform:rotateY(90deg) translateZ(100px);
    }
    .right {
        transform:rotateY(90deg) translateZ(-100px);
    }
    .front {
        transform:translateZ(100px);
    }
    .back {
        transform:translateZ(-100px);
    }
    @keyframes xz {
        0% {
        transform:rotateX(0deg) rotateY(0deg) rotateZ(0deg);
    }
    100% {
        transform:rotateX(360deg) rotateY(720deg) rotateZ(1080deg);
    }
    }

    这样就基本上可以了。然后我再加了一些自己的东西,所以完整代码如下:

    <!DOCTYPE html>
    <html lang="en">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <head>  
        <title>易木</title>
    <div id="divTyping"></div>
    <ul>   
        <li class="top"><img src="C:/Users/User/Desktop/3D-rotate/image/timg1.jpg"></li>
        <li class="bottom"><img src="C:/Users/User/Desktop/3D-rotate/image/timg2.jpg"></li>
        <li class="left"><img src="C:/Users/User/Desktop/3D-rotate/image/timg3.jpg"></li>
        <li class="right"><img src="C:/Users/User/Desktop/3D-rotate/image/timg4.jpg"></li>
        <li class="front"><img src="C:/Users/User/Desktop/3D-rotate/image/timg5.jpg"></li>
        <li class="back"><img src="C:/Users/User/Desktop/3D-rotate/image/timg6.jpg"></li>
    </ul>
        <style>
    #divTyping{  
                 315px;
                height: 280px;
                background-color: black;
                position: fixed;
                left: 300px;
                background-image:-webkit-linear-gradient(bottom,red,#fd8403,yellow); 
                -webkit-background-clip:text; 
                -webkit-text-fill-color:transparent; 
                font-size:22px;
            }
            .gradient-text-two{
                color:red;
            }
           * {
        margin:0;
        padding:0
    }
    ul {
        transform-style:preserve-3d;
        200px;
        height:200px;
        position:relative;
        margin:150px auto;
        list-style:none;
        animation-name:xz;
        animation-duration:20s;
        animation-iteration-count:infinite;
        animation-timing-function:linear;
    }
    ul:hover {
        animation-play-state:paused;
    }
    li {
        position:absolute;
        left:0;
        top:0;
        200px;
        height:200px;
        background:#ccc;
        opacity:.7;
    }
    li:hover {
        opacity:.3;
    }
    img {
        100%;
        height:100%;
    }
    .top {
        transform:rotateX(90deg) translateZ(100px);
    }
    .bottom {
        transform:rotateX(90deg) translateZ(-100px);
    }
    .left {
        transform:rotateY(90deg) translateZ(100px);
    }
    .right {
        transform:rotateY(90deg) translateZ(-100px);
    }
    .front {
        transform:translateZ(100px);
    }
    .back {
        transform:translateZ(-100px);
    }
    @keyframes xz {
        0% {
        transform:rotateX(0deg) rotateY(0deg) rotateZ(0deg);
    }
    100% {
        transform:rotateX(360deg) rotateY(720deg) rotateZ(1080deg);
    }
    }
        </style>
    </head>
    <body>
    <span></span>
    </body>
    <script >
        var str = " 手机有手机套保护,电视有电视罩保护,眼镜有眼镜盒保护,文具有铅笔袋保护,小草有大树保护,水滴有大海保护,雅典娜有圣斗士保护,红太郎有灰太狼保护,我只想做你的保护神,无论花开花落,云卷云舒,我会一直陪在你身边! ----易木"
            var i = 0;
            function typing(){
                var divTyping = document.getElementById('divTyping')
                if(i<=str.length){
                    divTyping.innerHTML = str.slice(0,i++) + "_";
                    setTimeout("typing()",400)
                }else{
                    divTyping.innerHTML = str;
                }
            }
            typing();
    </script>
    </html>

    这里面的图片就自己定义就好了,只要路径不出错,就行。

  • 相关阅读:
    跟着太白老师学python 10day 函数的动态参数 *args, **kwargs, 形参的位置顺序
    IO 流之字符流的缓冲区
    Java IO异常处理方式
    Java IO 流
    Java 其他对象的 API
    Java 集合框架之 JDK 1.5 新特性
    Java 集合框架工具类
    Java 集合框架之 Map
    Java 集合框架查阅技巧
    Java 集合框架之泛型
  • 原文地址:https://www.cnblogs.com/pingfandezhuanji/p/12448727.html
Copyright © 2011-2022 走看看