Animated Borders
Animated Borders
by Nirvanachain
HTML
<div class="container">
Text
</div>
CSS
.container, .container::before, .container::after {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
}
.container {
width: 200px;
height: 200px;
margin: auto;
box-shadow: inset 0 0 0 1px rgba(105, 202, 98, 0.5);
}
.container::before, .container::after {
content: '';
z-index: -1;
margin: -5%;
box-shadow: inset 0 0 0 2px;
animation: clipMe 8s linear infinite;
}
.container::before {
animation-delay: -4s;
}
@keyframes clipMe {
0%, 100% {
clip: rect(0px, 220px, 2px, 0px);
}
25% {
clip: rect(0px, 2px, 220px, 0px);
}
50% {
clip: rect(218px, 220px, 220px, 0px);
}
75% {
clip: rect(0px, 220px, 220px, 218px);
}
}