• 78.纯 CSS 创作 Windows 启动界面


    原文地址:https://segmentfault.com/a/1190000015632759

    学习后效果地址:https://scrimba.com/c/cPgWmZCg

    HTML code:

    <!--windows-boot : windows 启动-->
    <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>

    CSS code:

    html, body,.logo p{
        margin: 0;
        padding: 0;
    }
    body{
        height: 100vh;
        /* 设置body的子元素水平垂直居中 */
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: black;
        color: white;
        
    }
    .windows-boot{
        font-size: 15px;
        width: 21.5em;
        height: 15em;
        /* border: 1px dashed white; */
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: center;
    }
    .logo{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .logo p{
        margin: 0.1em 0;
        font-family: sans-serif;
    }
    .logo .ms{
        font-size: 1.6em;
        font-weight: lighter;
        line-height: 1em;
    }
    .logo .ms::after {
        content: '0a9';
        font-size: 0.625em;
        vertical-align: top;
        position: relative;
        top: -0.3em;
        left: 0.2em;
    }
    .logo .win{
        font-size: 4.2em;
        font-weight: bold;
        line-height: 86%;
    }
    .logo .win sup{
        color:red;
    }
    /* 用页面中的<sup>xp<sup>代替以下 
    .logo .win::after {
        content: 'XP';
        font-size: 0.5em;
        vertical-align: top;
        position: relative;
        top: -0.4em;
        color: tomato;
    }
    */
    .logo .pro{
        font-size: 3em;
        /* lighter: 清晰的 */
        font-weight: lighter;
        line-height: 1em;
        padding-left: 0.2em;
    }
    /* 定义进度条 */
    .bar{
        width: 15em;
        height: 1em;
        /* 银色 */
        border: 0.2em solid silver;
        border-radius: 0.7em;
        position: relative;
        padding: 0.2em;
         overflow: hidden;
    }
    /* 利用:::before制作蓝条 */
    .bar::before {
        content: '';
        position: absolute;
        width: 3em;
        height: 70%;
        border-radius: 0.2em;
        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);
        animation: run 2s linear infinite;
    }
    /* 定义动画 */
    @keyframes run {
        from {
            transform: translateX(-3em);
        }
    
        to {
            transform: translateX(15em);
        }
    }
  • 相关阅读:
    程序员职业规划
    SSH框架优缺点
    Servlet的生命周期,并说出Servlet和CGI的区别,Servlet与JSP的区别
    什么是J2EE,包括哪些规范!
    JS中定义类的方法
    audio.js – 随时随地,播放 HTML5 的声音
    jquery面试题里 缓存问题如何解决?
    产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复
    JAVA排序算法
    java面试题中常见的关于String类问题总结
  • 原文地址:https://www.cnblogs.com/FlyingLiao/p/11055609.html
Copyright © 2020-2023  润新知