会动的代码

196 阅读1分钟

先放掘金 , github 打不开 网速很差


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <!--    <meta name="viewport" content="width=device-width, initial-scale=1.0">-->
    <meta name="viewport"
          content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,viewport-fit=cover">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>我的简历</title>
</head>
<body>
<style id="style">
</style>
<div id="demo"></div>

<div id="div1Wrapper">

    <div id="div1"></div>

</div>


<style>

    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    *::after {
        box-sizing: border-box;
    }

    *::before {
        box-sizing: border-box;
    }

    #demo {
        word-break: break-all;
    }

    #div1 {
        position: fixed;
        left: 50%;
        transform: translateX(-50%);
        top: 20px;
    }

    @media (max-width: 500px) {
        #demo {
            height: 50vh;
            overflow: auto;
        }

        #div1Wrapper {
            height: 50vh;

        }

        #div1 {
            position: relative;
            top: 0;
            right: 0;
        }
    }
</style>
<script src="main.js"></script>
</body>
</html>



let str = `
/*你好我是前端新人
接下来我要加样式
首先我要准备一个DIV
*/
#div1 {
    width: 200px;
    height: 200px;
}
/*
变八卦
*/
#div1 {
    border-radius: 50%;
    box-shadow: 0 0 3px rgb(0, 0, 0);
    background: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 50%, rgba(0,0,0,1) 50%, rgba(0,0,0,1) 100%);
}

#div1::before {
        content: '';
        display: block;
        width: 100px;
        height: 100px;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        border-radius: 50%;
        background: black;
        background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 25%, rgba(0,0,0,1) 26%, rgba(0,0,0,1) 100%);    }

    #div1::after{
        content: '';
        display: block;
        width: 100px;
        height: 100px;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        border-radius: 50%;
        bottom: 0;
        background: white;
        background: radial-gradient(circle, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 17%, rgba(255,255,255,1) 17%, rgba(255,255,255,1) 100%);
    }
`;

let n = 0;
let s = document.querySelector("#demo");
let style = document.querySelector("#style");

let str2 = "";

let setUp = () => {
    setTimeout(() => {
        if (str.length === 0 || n >= str.length) {
            return;
        }

        if (str[n] === "\n") {
            str2 += "<br>";
        } else if (str[n] === " ") {
            str2 += "&nbsp";
        } else {
            str2 += str[n];
        }
        s.innerHTML = str2;
        style.innerHTML = str.substring(0, n);
        //滚动到最下面
        window.scrollTo(0, 99999);
        s.scrollTo(0, 99999);
        n += 1;

        setUp();
    }, 10);
};

setUp();