css吃豆豆动画

css吃豆豆动画_第1张图片

DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Documenttitle>
    <style>
        .box{
            width: 700px;height: 200px;
            /* background: pink; */
            margin: 100px auto;
            position: relative;
        }
        .eat{
            width: 200px;height: 200px;
            /* background: red; */
            border-radius: 50%;
            overflow: hidden;
            position: relative;
            z-index: 2;
        }
        .eat::before{
            content: "";
            /* 伪元素类似于span */
            /* 需要转为块元素才能设置宽高 */
            display: block;
            width: 200px;height: 100px;
            background: tomato;
            /* 旋转中心 */
            transform-origin: bottom center;
            transform: rotate(0deg);
            animation: rotate1 .4s ease infinite alternate;
        }
        .eat::after{
            content: "";
            display: block;
            width: 200px;height: 100px;
            background: tomato;
            transform-origin: top center;
            transform: rotate(30deg);
            /* alternate 动画在奇数次(1、3、5...)正向播放,在偶数次(2、4、6...)反向播放 */
            animation: rotate2 .4s ease infinite alternate;
        }
        .eye{
            width: 20px;height: 20px;
            background: #000;
            border: 2px solid #fff;
            border-radius: 50%;
            position: absolute;
            top:30px;left: 100px;
        }
        .peas{
            width: 40px;height: 40px;
            background: tomato;
            border-radius: 50%;
            position: absolute;
            top: calc(50% - 20px);
            /* transform: translateY(-20px); */
            left: 140px;
            /* 利用阴影多制造几个豆豆 */
            /* box-shadow: 水平阴影的位置 垂直阴影的位置 模糊距离 阴影的颜色 */
            box-shadow: 80px 0px 0px tomato,160px 0px 0px tomato,240px 0px 0px tomato,320px 0px 0px tomato,400px 0px 0px tomato,480px 0 0 tomato;
            animation: move .8s infinite;
        }
        /* 动画 */
        @keyframes rotate1 {
            0%{transform: rotate(0deg);}
            100%{transform: rotate(-30deg);}
        }
        @keyframes rotate2 {
            0%{transform: rotate(0deg);}
            100%{transform: rotate(30deg);}
        }
        @keyframes move {
            0%{transform: translateX(0);}
            100%{transform: translateX(-80px);}
        }
    style>
head>
<body>
    <div class="box">
        <div class="eat">
            <div class="eye">div>
        div>
        <div class="peas">div>
    div>
body>
html>

你可能感兴趣的:(前端,css,css3)