File size: 2,419 Bytes
edf2d8e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Glitch Effect</title>
    <style>

        @import url('https://fonts.googleapis.com/css?family=Fira+Mono:400');



        body { 

            display: flex;

            width: 100vw;

            height: 100vh;

            align-items: center;

            justify-content: center;

            margin: 0;

            background: #131313;

            color: #fff;

            font-size: 96px;

            font-family: 'Fira Mono', monospace;

            letter-spacing: -7px;

        }



        div {

            position: relative;

            animation: glitch 1s linear infinite;

        }



        @keyframes glitch {

            2%, 64% {

                transform: translate(2px, 0) skew(0deg);

            }

            4%, 60% {

                transform: translate(-2px, 0) skew(0deg);

            }

            62% {

                transform: translate(0, 0) skew(5deg); 

            }

        }



        div:before,

        div:after {

            content: attr(title);

            position: absolute;

            left: 0;

        }



        div:before {

            animation: glitchTop 1s linear infinite;

            clip-path: polygon(0 0, 100% 0, 100% 33%, 0 33%);

            -webkit-clip-path: polygon(0 0, 100% 0, 100% 33%, 0 33%);

        }



        @keyframes glitchTop {

            2%, 64% {

                transform: translate(2px, -2px);

            }

            4%, 60% {

                transform: translate(-2px, 2px);

            }

            62% {

                transform: translate(13px, -1px) skew(-13deg); 

            }

        }



        div:after {

            animation: glitchBottom 1.5s linear infinite;

            clip-path: polygon(0 67%, 100% 67%, 100% 100%, 0 100%);

            -webkit-clip-path: polygon(0 67%, 100% 67%, 100% 100%, 0 100%);

        }



        @keyframes glitchBottom {

            2%, 64% {

                transform: translate(-2px, 0);

            }

            4%, 60% {

                transform: translate(-2px, 0);

            }

            62% {

                transform: translate(-22px, 5px) skew(21deg); 

            }

        }

    </style>
</head>
<body>
    <div title="404">404</div>
</body>
</html>