How To Take A Custom Button Hover Effect In Elementor

Wide transparent graphic asset of a torn paper edge rendered in white, appearing blank against a white background
Thumbnail with a man in a dark jacket on the left over a purple glow with the partly hidden heading Management: Where Talent Meets Opportunity behind him, and a large slanted orange side menu panel listing Home, About Us, Services, Our Work, Careers and Contact Us with Facebook, YouTube, Instagram and LinkedIn links, a yellow CLOSE button at the top right, a magenta circle with a white list icon at the lower left, and model portrait cards visible behind the panel

The Creative Overlay Menu in Elementor — A Full-Screen Menu That Shows Off

Reboot Addons' Creative Overlay Menu: a full-screen Elementor menu with kicker, headline, CTA and eleven animated surface options. No custom ...

Read More
A web-design studio desk with a laptop and monitors showing website layouts and design tools — the kind of monthly managed-build behind the R749 to R1999 plans.

R749 vs R999 vs R1999 — What Each Website Package Actually Gets You

R749, R999, R1499 or R1999 a month — what each Reboot Websites package actually builds, and why the gap between ...

Read More
Tall parallax website demo screenshot for Apple Watch Ultra showing a hero with the heading Apple Watch Ultra: Your Companion for Every Adventure over a close up of the watch face on a wrist, a dark section with the heading A REVOLUTIONARY BLEND OF CUTTING-EDGE TECHNOLOGY AND RUGGED DURABILITY FOR THE MODERN EXPLORER beside a floating watch band image, a section of layered watch photos with translucent highlight text, and a flat lay of the watch with an orange band beside a succulent and a Bullet planner notebook, all inside the WordPress admin bar

Advanced Text FX in Elementor — 58 Text Effects in One Widget

Advanced Text FX gives you 58 text-in effects in one Elementor widget — scramble, typewriter, glitch, neon, and a whole ...

Read More
Thumbnail with a man in a dark shirt on the right, a fan of eight portrait cards of women behind him, large distressed red and orange CARD EFFECT lettering across the bottom, a magenta circle with a white list icon at the lower right, and a blurred purple radial background

Elementor Card Widgets without Custom JS — The Free Tier

Seven content widgets plus all six form stylers that build card effects, carousels, and styled forms without writing JS. Widget ...

Read More
Showing Slide 1 of 5
Thumbnail with a man in a dark shirt on the left, two purple VIEW MORE buttons side by side showing a plain button and a button with an animated gradient border, a glowing blue curved arrow pointing at the second button, and a magenta hamburger menu icon below

So if you follow along in the video, I refer to this blog post for you to enter code at certain points, so below is everything you will need!

The Following code goes into the button widget under the Custom CSS option:

				
					/* Updated base variables and wrapper */
.elementor-widget-button a.elementor-button {
    --btn-width: 180px;
    --btn-height: 50px;
    --left-gradient: #F803F8;
    --right-gradient: #03F2FD;
    position: relative;
    width: var(--btn-width);
    height: var(--btn-height);
    padding: 0 !important;
    border: none !important;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

/* Gradient border effect */
.elementor-widget-button a.elementor-button::before,
.elementor-widget-button a.elementor-button::after {
    content: '';
    position: absolute;
    inset: 1px;
    transition: 0.5s;
    border-radius: inherit;
    background: linear-gradient(45deg, var(--left-gradient), transparent, transparent, var(--right-gradient));
    z-index: 1;
}

/* Hover effect for outer glow */
.elementor-widget-button a.elementor-button:hover::before,
.elementor-widget-button a.elementor-button:hover::after {
    inset: -3px;
}

.elementor-widget-button a.elementor-button:hover::after {
    filter: blur(10px);
}

/* Button inner wrapper */
.elementor-widget-button .elementor-button-content-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    z-index: 10;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: inherit;
    overflow: hidden;
}

/* Glass shine effect */
.elementor-widget-button .elementor-button-content-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: -50%;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.06);
    transform: skewX(-25deg);
    transition: 0.5s;
    z-index: 1;
}

/* Shine animation on hover */
.elementor-widget-button .elementor-button-content-wrapper:hover::before {
    left: 50%;
}

/* Ensure button text stays on top */
.elementor-widget-button .elementor-button-text {
    position: relative;
    z-index: 2;
}