继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

H5用css3写一个火柴人来回奔跑

哔哔one
关注TA
已关注
手记 340
粉丝 93
获赞 543

效果地址 https://htmlzhoyan.github.io/Matchstick/

image.png


<!DOCTYPE html><html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        
        <style>
            html,body{                width: 100%;                height: 100%;                margin: 0;                padding: 0;                border: 0;
                
            }            #container{                width: 1000px;                height: 400px;                background: darkcyan;                margin: 100px auto;                position:relative;                overflow: hidden;
            
            }            .man{                position: absolute;                width: 60px;                height: 200px;        
                bottom: 0;                left: 10px;                animation: buffer 10s linear infinite;                perspective: 700px;
                
                
            }            .man1{                left: 80px;
            }            .man2{                left: 150px;    
            }            .man3{                left: 220px;    
            }            .man4{                left: 290px;
            }
            @keyframes buffer{
                0%{transform:translateX(0px);}
                50%{transform: translateX(950px);}
                100%{transform:translateX(0px);}
            
            }            
        
            
            
            
            .top{                width: 50px;                height: 50px;                border: 1px solid #000;                border-radius: 50px;                position: absolute;                left: 5px;                top: 0;                background: #000;                animation: buffe 10s steps(1,end) infinite;
            
            }
            
            @keyframes buffe{
                0%{transform:rotate(0deg);}
                50%{transform:rotate(150deg);}
                100%{transform:rotate(0deg);}
            }            
            
            .top:before{                content: '';                display: inline-block;                background: #000;                width: 10px;                height: 10px;                border-radius: 10px;                position: absolute;                left: 25px;                top: 15px;                border: 5px solid#ccc;
            }            .top:after{                content: '';                display: inline-block;                border: 5px solid #008B8B;                position: absolute;                left: 45px;                top: 30px;                border-left:20px solid #000;                transform: rotate(10deg);
                
            }            .center{                width: 50px;                height: 100px;                position: absolute;                left: 5px;                top: 50px;                border-radius: 30px;                transform-style: preserve-3d;                transform: rotateY(85deg);                animation: funmove 0.5s step-end infinite;
                
            }
            @keyframes funmove{
                0%{transform: rotateY(85deg)}
                25%{transform: rotateY(0deg)}
                50%{transform: rotateY(-50deg)}
                75%{transform: rotateY(-85deg);}
                100%{transform: rotateY(85deg);}

            }            .item{                width: 50px;                height: 100px;                
                position: absolute;                background: rgba(88,213,20,0.8);                font-weight: 900;                border-radius: 30px;
            
            }            .front{                transform:translateZ(20px);
            }            .back{                transform:translateZ(-20px) rotateY(180deg);
            }        
            .left{                transform:rotateY(-90deg) translateZ(20px);
            }            .right{                transform:rotateY(90deg) translateZ(20px);
            }            .footer1{       
                width: 5px;                height: 100px;                background: #000;                position: absolute;                bottom: 0;                left: 20px;                transform: rotate(20deg);                transform-origin: 100% 0;                animation: mMove1 1s linear infinite;
            }            .man:before{                content: '';                display: inline-block;                width: 5px;                height: 80px;                background: #000;                position: absolute;                bottom: 50px;                left: 10px;                transform: rotate(-10deg);                transform-origin: 100% 0;                animation: mMove2 1s linear infinite;
                
            }            .man:after{                content: '';                display: inline-block;                width: 5px;                height:80px;                background: #000;                position: absolute;                bottom: 50px;                left: 40px;                transform: rotate(-10deg);                transform-origin: 100% 0;                animation: mMove1 1s linear infinite;
            }
            @keyframes mMove1{
                0%{transform:rotate(20deg);}
                50%{transform: rotate(-10deg);}
                100%{transform: rotate(20deg);}
            
            }            .footer2{                width: 5px;                height: 100px;                background: #000;                position: absolute;                bottom: 0;                right: 20px;                transform: rotate(-20deg);                transform-origin: 100% 0;                animation: mMove2 1s linear infinite;
            }
            @keyframes mMove2{
                0%{transform:rotate(-20deg);}
                50%{transform: rotate(10deg);}
                100%{transform: rotate(-20deg);}
            
            }        </style>
    </head>
    <body>
        <div id="container">
            <div class="man">
                <div class="top">
                    
                </div>
                <div class="center">
                    <div class="item front"></div>
                    <div class="item back"></div>
                    <div class="item left"></div>
                    <div class="item right"></div>
                </div>
                <div class="footer1">
                    
                </div>
                <div class="footer2">
                    
                </div>
            </div>
            <div class="man man1">
                <div class="top">
                    
                </div>
                <div class="center">
                    <div class="item front"></div>
                    <div class="item back"></div>
                    <div class="item left"></div>
                    <div class="item right"></div>
                </div>
                <div class="footer1">
                    
                </div>
                <div class="footer2">
                    
                </div>
            </div>
            <div class="man man2">
                <div class="top">
                    
                </div>
                <div class="center">
                    <div class="item front"></div>
                    <div class="item back"></div>
                    <div class="item left"></div>
                    <div class="item right"></div>
                </div>
                <div class="footer1">
                    
                </div>
                <div class="footer2">
                    
                </div>
            </div>
            <div class="man man3">
                <div class="top">
                    
                </div>
                <div class="center">
                    <div class="item front"></div>
                    <div class="item back"></div>
                    <div class="item left"></div>
                    <div class="item right"></div>
                </div>
                <div class="footer1">
                    
                </div>
                <div class="footer2">
                    
                </div>
            </div>
            <div class="man man4">
                <div class="top">
                    
                </div>
                <div class="center">
                    <div class="item front"></div>
                    <div class="item back"></div>
                    <div class="item left"></div>
                    <div class="item right"></div>
                </div>
                <div class="footer1">
                    
                </div>
                <div class="footer2">
                    
                </div>
            </div>
        </div>
    </body></html>



作者:吃盖浇饭
链接:https://www.jianshu.com/p/01282dc7923f

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP