naeemqaswar
5/4/2018 - 12:43 PM

Material Horizontal Line Loader Animation

<!doctype html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
        <style>
            .horizontal-progress-loader {
                position: relative;
                height: 4px;
                display: block;
                width: 100%;
                background-color: #03a9f4;
                overflow: hidden
            }
            .horizontal-progress-loader .determinate {
                position: absolute;
                top: 0;
                left: 0;
                bottom: 0;
                background-color: #26a69a;
                -webkit-transition: width .3s linear;
                transition: width .3s linear
            }
            .horizontal-progress-loader .indeterminate {
                background-color: #e7eef1;
            }
            .horizontal-progress-loader .indeterminate:before {
                content: '';
                position: absolute;
                background-color: inherit;
                top: 0;
                left: 0;
                bottom: 0;
                will-change: left, right;
                -webkit-animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
                animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite
            }
            .horizontal-progress-loader .indeterminate:after {
                content: '';
                position: absolute;
                background-color: inherit;
                top: 0;
                left: 0;
                bottom: 0;
                will-change: left, right;
                -webkit-animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
                animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
                -webkit-animation-delay: 1.15s;
                animation-delay: 1.15s
            }
            @-webkit-keyframes indeterminate {
                0% {
                    left: -35%;
                    right: 100%
                }
                60% {
                    left: 100%;
                    right: -90%
                }
                100% {
                    left: 100%;
                    right: -90%
                }
            }
            @keyframes indeterminate {
                0% {
                    left: -35%;
                    right: 100%
                }
                60% {
                    left: 100%;
                    right: -90%
                }
                100% {
                    left: 100%;
                    right: -90%
                }
            }
            @-webkit-keyframes indeterminate-short {
                0% {
                    left: -200%;
                    right: 100%
                }
                60% {
                    left: 107%;
                    right: -8%
                }
                100% {
                    left: 107%;
                    right: -8%
                }
            }
            @keyframes indeterminate-short {
                0% {
                    left: -200%;
                    right: 100%
                }
                60% {
                    left: 107%;
                    right: -8%
                }
                100% {
                    left: 107%;
                    right: -8%
                }
            }
        </style>
    </head>
    <body>
        <div class="container">
            <div class="row">
                <h2>Material Loader Animation</h2>
            </div>
            <div class="row">
                <div class="col-sm-12">
                    <div class="horizontal-progress-loader">
                        <div class="indeterminate"></div>
                    </div>
                </div>
            </div>
        </div>
    </body>
</html>