JSFiddle - React, Tailwind, and code Playground
HTML
<a class="_it4vx _72fik">
<span>AMMC</span>
</a>
<a class="button button-svg animated-btn " href="http://teslakarting.com/training/schedule/"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 339.3 66.3">
<linearGradient id="grad1" gradientUnits="userSpaceOnUse">
<stop class="stop-1" offset="0%" stop-color="#d585ff"/>
<stop class="stop-2" offset="100%" stop-color="#2199ff"/>
</linearGradient>
<text transform="matrix(1 0 0 1 96.3537 40.6395)" class="st0 st1 st2 button-svg-text" x="8" y="0">Расписание</text>
<path class="btn-border " d="M2.6 33.7c0-16.6 13.4-30 30-30h274c16.6 0 30 13.4 30 30 0 16.6-13.4 30-30 30h-274C16 63.7 2.6 50.3 2.6 33.7z"></path>
<path class="btn-border border-hover" d="M2.6 33.7c0-16.6 13.4-30 30-30h274c16.6 0 30 13.4 30 30 0 16.6-13.4 30-30 30h-274C16 63.7 2.6 50.3 2.6 33.7z"> </path>
</svg>
</a>
CSS
html{
background: url(http://amm-c.ru/bitrix/templates/main/images/ammc_bg.jpg);
background-size: cover;
background-repeat: no-repeat;
position: relative;
width: 100%;
height: 100%;
}
html:after{
z-index: -1;
top: 0;
right: 0;
left: 0;
bottom: 0;
content: "";
position: absolute;
width: 100%;
background: #0000009c;
height: 100%;
}
@keyframes LoadingBarProgress {
0% {
background-position: 0% 0
}
to {
background-position: 125% 0
}
}
@-webkit-keyframes LoadingBarEnter {
0% {
-webkit-transform: scaleX(0);
transform: scaleX(0)
}
to {
-webkit-transform: scaleX(1);
transform: scaleX(1)
}
}
._it4vx {
width: 200px;
margin: 0 auto;
margin-top: 10%;
position: relative;
height: 50px;
display:block;
border-radius: 50px;
background: #d585ff linear-gradient(to right, #d585ff, #2199ff, #00ffee, #6652ff, #d585ff);
background-size: 500%;
transform-origin: left;
cursor:pointer;
margin: auto;
}
._it4vx:hover{
animation: 2s linear infinite LoadingBarProgress
}
._it4vx span{
display: block;
text-align: center;
line-height: 43px;
color:#fff;
position: absolute;
top: 1px;
left: 1px;
right: 1px;
bottom: 1px;
border-radius: 50px;
background: #636363;
}
.button {
padding: 12px 20px 14px;
width: 200px;
margin: 0 auto;
display: block;
height: 50px;
}
.btn-border {
fill: none;
stroke: url(#grad1);
stroke-width: 1;
stroke-miterlimit: 10;
stroke-dasharray: 1000;
}
stop{
animation: colors 2s infinite linear;
}
.stop-1 {
}
.stop-2 {
animation-delay: -6s;
}
@keyframes colors {
20% {
stop-color: #d585ff;
}
40% {
stop-color: #2199ff;
}
60% {
stop-color: #00ffee;
}
80% {
stop-color: #6652ff;
}
100% {
stop-color: #d585ff;
}
}