• 技术文章 >web前端 >css教程

    如何使用纯CSS实现Windows启动界面的动画效果

    不言不言2018-09-04 11:33:50原创1426
    本篇文章给大家带来的内容是关于如何使用纯CSS实现Windows启动界面的动画效果 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

    效果预览

    3908068525-5b48e7e0d1625_articlex.gif

    源代码下载

    https://github.com/comehope/front-end-daily-challenges

    代码解读

    定义 dom,容器中包含 2 个元素,分别代表 logo 和进度条,logo 又包含 3 段文字:

    <div class="windows-boot">
        <div class="logo">
            <p class="ms">Microsoft</p>
            <p class="win">Windows</p>
            <p class="pro">Professional</p>
        </div>
        <div class="bar"></div>
    </div>

    居中显示:

    body {
        margin: 0;
        height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: black;
    }

    定义容器尺寸:

    .windows-boot {
        width: 21.5em;
        height: 15em;
    }

    设置段落样式:

    .logo p {
        color: white;
        font-family: sans-serif;
        margin: 0;
        padding: 0;
    }

    设置字号:

    .logo .ms {
        font-size: 1.6em;
    }
    
    .logo .win {
        font-size: 4.2em;
    }
    
    .logo .pro {
        font-size: 3em;
    }

    设置字体粗细:

    .logo .ms {
        font-weight: lighter;
    }
    
    .logo .win {
        font-weight: bold;
    }
    
    .logo .pro {
        font-weight: lighter;
    }

    设置行高:

    .logo .ms {
        line-height: 1em;
    }
    
    .logo .win {
        line-height: 86%;
    }
    
    .logo .pro {
        line-height: 1em;
        padding-left: 0.2em;
    }

    在 "Microsoft" 后面增加商标版权符号:

    .logo .ms::after {
        content: '\00a9';
        font-size: 0.625em;
        vertical-align: top;
        position: relative;
        top: -0.3em;
        left: 0.2em;
    }

    在 "Windows" 后面增加 "xp":

    .logo .win::after {
        content: 'XP';
        font-size: 0.5em;
        vertical-align: top;
        position: relative;
        top: -0.4em;
        color: tomato;
    }

    定义进度条尺寸:

    .bar {
        width: 15em;
        height: 1em;
        border: 0.2em solid silver;
    }

    增加 logo 和进度条的间距:

    .windows-xp-loader {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
    }

    设置进度条的样式:

    .bar {
        border-radius: 0.7em;
        position: relative;
        padding: 0.2em;
    }
    
    .bar::before {
        content: '';
        position: absolute;
        width: 3em;
        height: 70%;
        background-color: dodgerblue;
        border-radius: 0.2em;
    }

    用线性渐变设置进度条中蓝色色块的样式:

    .bar::before {
        background: 
            linear-gradient(
                to right,
                transparent 30%,
                black 30%, black 35%,
                transparent 35%, transparent 65%,
                black 65%, black 70%,
                transparent 70%
            ),
            linear-gradient(
                blue 0%,
                royalblue 17%,
                deepskyblue 32%, deepskyblue 45%,
                royalblue 60%,
                blue 100%
            );
        filter: brightness(1.2);
    }

    增加动画效果:

    .bar::before {
        animation: run 2s linear infinite;
    }
    
    @keyframes run {
        from {
            transform: translateX(-3em);
        }
    
        to {
            transform: translateX(15em);
        }
    }

    最后,隐藏进度条之外的内容:

    .bar {
        overflow: hidden;
    }

    大功告成!

    相关推荐:

    如何使用纯CSS实现单元素麦当劳的Logo(附源码)

    如何使用纯CSS实现小球跳跃台阶的动画效果(附源码)

    以上就是如何使用纯CSS实现Windows启动界面的动画效果的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:windows css3 css html5 前端
    上一篇:如何使用纯CSS实现单元素麦当劳的Logo(附源码) 下一篇:如何使用纯CSS实现蝴蝶标本的展示框效果
    Web大前端开发直播班

    相关文章推荐

    • 如何使用纯CSS实现一台咖啡机的效果• 如何使用纯CSS实现一颗土星的效果• 如何使用纯CSS实现一头绿猪的效果• 如何使用纯CSS实现一只移动的小白兔动画效果• 如何使用纯CSS实现一只黑色的愤怒小鸟(附代码)

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网