button{ animation: beat 6s ease 0s infinite normal; } @keyframes beat { 0% { transform: translateY(0px); } 2% { transform: translateY(-7px); } 6% { transform: translateY(7px); } 8% { transform: translateY(0px); } 10% { transform: translateY(-5px); } 12% { transform: translateY(5px); } 16% { transform: translateY(0px); } 50% { transform: translateY(0px); } 100% { transform: translateY(0px); } }