CSS Gradient Button Effects

Explore creative CSS Gradient Button animations with live preview and copy-ready code for your projects.

<button class="gradient-button">Get Started</button> .gradient-button{ padding:15px 35px; font-size:18px; font-weight:bold; color:white; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; /* Gradient Background */ background:linear-gradient(90deg,#ff0080,#7928ca,#007bff); /* Gradient ko slide karne ke liye */ background-size:200% 100%; background-position:left center; transition:all 0.4s ease; } /* Hover Effect */ .gradient-button:hover{ background-position:right center; /* Gradient move karega */ transform:scale(1.05); /* Slight zoom */ box-shadow:0 10px 25px rgba(0,0,0,0.25); }
<button class="gradient-shine">Get Started</button> .gradient-shine{ padding:15px 35px; font-size:18px; font-weight:bold; color:#fff; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; overflow:hidden; /* Base Gradient */ background:linear-gradient(135deg,#ff0080,#7928ca,#007bff); transition:all 0.3s ease; } /* Shine layer */ .gradient-shine::before{ content:""; position:absolute; top:0; left:-100%; width:60%; height:100%; background:linear-gradient( 120deg, transparent, rgba(255,255,255,0.6), transparent ); transform:skewX(-25deg); transition:left 0.6s ease; } /* Hover effect */ .gradient-shine:hover::before{ left:140%; } .gradient-shine:hover{ transform:scale(1.05); box-shadow:0 10px 25px rgba(0,0,0,0.25); }
<button class="gradient-border-glow-diagonal">Get Started</button> .gradient-border-glow-diagonal{ padding:15px 35px; font-size:18px; font-weight:bold; color:#fff; background:#111; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; z-index:1; transition:all 0.3s ease; } /* Diagonal Gradient border layer */ .gradient-border-glow-diagonal::before{ content:""; position:absolute; top:-2px; left:-2px; right:-2px; bottom:-2px; background:linear-gradient(135deg,#ff0080,#7928ca,#007bff,#ff0080); /* diagonal 135deg */ border-radius:50px; z-index:-1; opacity:0; transition:opacity 0.4s ease; } /* Diagonal Glow blur */ .gradient-border-glow-diagonal::after{ content:""; position:absolute; top:-6px; left:-6px; right:-6px; bottom:-6px; background:linear-gradient(135deg,#ff0080,#7928ca,#007bff,#ff0080); border-radius:50px; filter:blur(10px); z-index:-2; opacity:0; transition:opacity 0.4s ease; } /* Hover */ .gradient-border-glow-diagonal:hover::before, .gradient-border-glow-diagonal:hover::after{ opacity:1; } .gradient-border-glow-diagonal:hover{ transform:scale(1.05); }
<button class="gradient-border-glow">Get Started</button> .gradient-border-glow{ padding:15px 35px; font-size:18px; font-weight:bold; color:#fff; background:#111; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; z-index:1; transition:all 0.3s ease; } /* Gradient border layer */ .gradient-border-glow::before{ content:""; position:absolute; top:-2px; left:-2px; right:-2px; bottom:-2px; background:linear-gradient(90deg,#ff0080,#7928ca,#007bff,#ff0080); border-radius:50px; z-index:-1; opacity:0; transition:opacity 0.4s ease; } /* Glow blur */ .gradient-border-glow::after{ content:""; position:absolute; top:-6px; left:-6px; right:-6px; bottom:-6px; background:linear-gradient(90deg,#ff0080,#7928ca,#007bff,#ff0080); border-radius:50px; filter:blur(10px); z-index:-2; opacity:0; transition:opacity 0.4s ease; } /* Hover */ .gradient-border-glow:hover::before, .gradient-border-glow:hover::after{ opacity:1; } .gradient-border-glow:hover{ transform:scale(1.05); }
<button class="animated-gradient-border">Get Started</button> .animated-gradient-border{ padding:15px 40px; font-size:18px; font-weight:bold; color:#fff; background:#111; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; z-index:1; transition:all 0.3s ease; overflow:hidden; } /* Animated Gradient Border */ .animated-gradient-border::before{ content:""; position:absolute; top:-3px; left:-3px; right:-3px; bottom:-3px; border-radius:50px; background:linear-gradient(270deg,#ff0080,#7928ca,#007bff,#ff0080); background-size:600% 600%; /* Smooth gradient movement */ z-index:-1; filter:blur(10px); opacity:0; transition:opacity 0.4s ease; animation:gradient-animate 5s linear infinite; } /* Hover */ .animated-gradient-border:hover::before{ opacity:1; } .animated-gradient-border:hover{ transform:scale(1.05); } /* Gradient animation keyframes */ @keyframes gradient-animate { 0%{background-position:0% 50%;} 50%{background-position:100% 50%;} 100%{background-position:0% 50%;} }
<button class="gradient-border-pulse">Get Started</button> .gradient-border-pulse{ padding:15px 40px; font-size:18px; font-weight:bold; color:#fff; background:#111; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; z-index:1; overflow:hidden; transition:all 0.3s ease; box-shadow:0 0 10px rgba(255,0,128,0.4); /* Soft base glow */ } /* Outer Gradient Border */ .gradient-border-pulse::before{ content:""; position:absolute; top:-3px; left:-3px; right:-3px; bottom:-3px; border-radius:50px; background:linear-gradient(45deg,#ff0080,#7928ca,#007bff,#ff0080); z-index:-1; filter:blur(15px); opacity:0.6; transition:opacity 0.3s ease; } /* Inner Glow Pulse */ .gradient-border-pulse::after{ content:""; position:absolute; top:0; left:0; right:0; bottom:0; border-radius:50px; background:radial-gradient(circle,#ffffff10,#00000000); z-index:-2; transition:all 0.3s ease; } /* Hover Effect */ .gradient-border-pulse:hover{ transform:scale(1.05); box-shadow:0 0 25px rgba(255,0,128,0.6); } .gradient-border-pulse:hover::before{ opacity:1; } .gradient-border-pulse:hover::after{ transform:scale(1.1); opacity:0.8; }
<button class="animated-gradient-bg">Get Started</button> .animated-gradient-bg{ padding:15px 40px; font-size:18px; font-weight:bold; color:#fff; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; background:linear-gradient(270deg,#ff0080,#7928ca,#007bff,#ff0080); background-size:600% 600%; transition:all 0.3s ease; animation:gradient-bg-animation 8s ease infinite; } /* Background Animation */ @keyframes gradient-bg-animation { 0%{background-position:0% 50%;} 50%{background-position:100% 50%;} 100%{background-position:0% 50%;} } /* Hover Effect */ .animated-gradient-bg:hover{ transform:scale(1.05); box-shadow:0 10px 25px rgba(0,0,0,0.3); }
<button class="gradient-border-fill"><span>Get Started</span></button> .gradient-border-fill{ padding:15px 45px; font-size:16px; font-weight:600; color:#ff0080; background:#fff; border:2px solid transparent; border-radius:50px; cursor:pointer; outline:none; position:relative; overflow:hidden; transition:all 0.3s ease; } /* Gradient border layer */ .gradient-border-fill::before{ content:""; position:absolute; top:0; left:0; width:100%; height:100%; border-radius:50px; padding:2px; background:linear-gradient(90deg,#ff0080,#7928ca,#007bff); -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; opacity:0; transition:opacity 0.4s ease; z-index:0; } /* Text above border */ .gradient-border-fill span{ position:relative; z-index:1; transition:color 0.3s ease; } /* Hover */ .gradient-border-fill:hover::before{ opacity:1; } .gradient-border-fill:hover{ color:#fff; background:#111; transform:scale(1.05); }
<button class="gradient-rotate-bg"><span>Get Started</span></button> .gradient-rotate-bg{ padding:15px 45px; font-size:16px; font-weight:600; color:#fff; background:linear-gradient(0deg, #ff0080, #7928ca, #007bff); border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; overflow:hidden; transition:transform 0.3s ease, box-shadow 0.3s ease; background-size:200% 200%; } /* Text above */ .gradient-rotate-bg span{ position:relative; z-index:1; } /* Hover effect - rotate background */ .gradient-rotate-bg:hover{ animation:rotate-bg 2s linear infinite; transform:scale(1.05); box-shadow:0 10px 25px rgba(0,0,0,0.2); } /* Keyframes for gradient rotation */ @keyframes rotate-bg { 0% { background:linear-gradient(0deg, #ff0080, #7928ca, #007bff); background-size:200% 200%; } 50% { background:linear-gradient(180deg, #ff0080, #7928ca, #007bff); background-size:200% 200%; } 100% { background:linear-gradient(360deg, #ff0080, #7928ca, #007bff); background-size:200% 200%; } }
<button class="gradient-wave-hover"><span>Get Started</span></button> .gradient-wave-hover{ padding:15px 45px; font-size:16px; font-weight:600; color:#fff; background:linear-gradient(90deg,#ff0080,#7928ca,#007bff,#ff0080); border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; overflow:hidden; transition:transform 0.3s ease, box-shadow 0.3s ease; background-size:300% 100%; } /* Text above */ .gradient-wave-hover span{ position:relative; z-index:1; } /* Hover effect - animate gradient wave */ .gradient-wave-hover:hover{ animation:wave-bg 2s linear infinite; transform:scale(1.05); box-shadow:0 10px 25px rgba(0,0,0,0.2); } /* Keyframes for wave animation */ @keyframes wave-bg { 0% { background-position:0% 50%; } 50% { background-position:100% 50%; } 100% { background-position:0% 50%; } }
<button class="gradient-glow-hover"><span>Get Started</span></button> .gradient-glow-hover{ padding:15px 45px; font-size:16px; font-weight:600; color:#fff; background:#111; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; overflow:hidden; transition:transform 0.3s ease, box-shadow 0.3s ease; } /* Gradient glow layer */ .gradient-glow-hover::before{ content:""; position:absolute; top:-50%; left:-50%; width:200%; height:200%; background:linear-gradient(45deg,#ff0080,#7928ca,#007bff,#ff0080); filter:blur(20px); opacity:0; transition:opacity 0.4s ease; z-index:0; } /* Text above */ .gradient-glow-hover span{ position:relative; z-index:1; } /* Hover effect */ .gradient-glow-hover:hover::before{ opacity:1; } .gradient-glow-hover:hover{ transform:scale(1.05); box-shadow:0 10px 25px rgba(0,0,0,0.3); }
<button class="gradient-ripple"><span>Get Started</span></button> .gradient-ripple{ padding:15px 45px; font-size:16px; font-weight:600; color:#fff; background:#111; border:none; border-radius:50px; cursor:pointer; outline:none; position:relative; overflow:hidden; transition:transform 0.3s ease, box-shadow 0.3s ease; } /* Text above */ .gradient-ripple span{ position:relative; z-index:1; } /* Ripple effect layer */ .gradient-ripple::after{ content:""; position:absolute; width:100%; height:100%; top:0; left:0; border-radius:50%; background:radial-gradient(circle, #ff0080, #7928ca, #007bff); opacity:0; transform:scale(0); transition:transform 0.6s ease, opacity 0.6s ease; z-index:0; pointer-events:none; } /* Hover Ripple */ .gradient-ripple:hover::after{ opacity:0.4; transform:scale(2.5); } .gradient-ripple:hover{ transform:scale(1.05); box-shadow:0 10px 25px rgba(0,0,0,0.2); }
<button class="gradient-border-anim"><span>Get Started</span></button> .gradient-border-anim{ padding:15px 45px; font-size:16px; font-weight:600; color:#fff; background:#111; border:2px solid transparent; border-radius:50px; cursor:pointer; outline:none; position:relative; overflow:hidden; transition:transform 0.3s ease, box-shadow 0.3s ease; } /* Animated gradient border layer */ .gradient-border-anim::before{ content:""; position:absolute; top:-2px; left:-2px; right:-2px; bottom:-2px; border-radius:50px; background:linear-gradient(90deg, #ff0080, #7928ca, #007bff, #ff0080); z-index:-1; animation:gradient-border 3s linear infinite; } /* Inner mask to show background inside */ .gradient-border-anim::after{ content:""; position:absolute; top:2px; left:2px; right:2px; bottom:2px; border-radius:50px; background:#111; z-index:-1; } /* Text above */ .gradient-border-anim span{ position:relative; z-index:1; transition:color 0.3s ease; } /* Hover */ .gradient-border-anim:hover{ transform:scale(1.05); box-shadow:0 10px 25px rgba(0,0,0,0.2); } /* Gradient border animation */ @keyframes gradient-border { 0%{background-position:0% 50%;} 50%{background-position:100% 50%;} 100%{background-position:0% 50%;} }