mirror of
https://github.com/uiverse-io/galaxy.git
synced 2025-11-28 05:00:22 +08:00
72 lines
1.3 KiB
HTML
72 lines
1.3 KiB
HTML
<button class="button">
|
|
<span></span>
|
|
Button
|
|
<span></span>
|
|
</button>
|
|
<style>
|
|
/* From Uiverse.io by MusKRI - Source: https://www.youtube.com/watch?v=e3w9liPXSi4 - Tags: button, active, ripple */
|
|
.button {
|
|
padding: 15px 40px;
|
|
background: linear-gradient(to right, #09021c, #0c061d);
|
|
color: white;
|
|
border: 1px solid transparent;
|
|
border-radius: 8px;
|
|
cursor: pointer;
|
|
transition: all 300ms ease-in-out;
|
|
position: relative;
|
|
isolation: isolate;
|
|
overflow: hidden;
|
|
}
|
|
|
|
.button > span {
|
|
position: absolute;
|
|
z-index: -1;
|
|
background: transparent;
|
|
opacity: 0.5;
|
|
width: 33.333%;
|
|
height: 100%;
|
|
}
|
|
|
|
.button > :first-child {
|
|
left: 0;
|
|
top: 0;
|
|
}
|
|
|
|
.button > :last-child {
|
|
right: 0;
|
|
top: 0;
|
|
}
|
|
|
|
.button::before {
|
|
content: "";
|
|
position: absolute;
|
|
z-index: -1;
|
|
background: hsl(236, 19%, 25%);
|
|
opacity: 0;
|
|
width: 10%;
|
|
aspect-ratio: 1;
|
|
border-radius: 50%;
|
|
inset: 0;
|
|
margin: auto;
|
|
transition: opacity 1000ms 200ms ease-in-out, transform 200ms ease-in-out;
|
|
}
|
|
|
|
.button:active::before {
|
|
transform: scale(13);
|
|
opacity: 1;
|
|
transition: all 400ms ease-in-out;
|
|
}
|
|
|
|
.button:has(:first-child:active)::before {
|
|
margin-left: 0;
|
|
}
|
|
|
|
.button:has(:last-child:active)::before {
|
|
margin-right: 0;
|
|
}
|
|
|
|
.button:has(:first-child:active)::before,
|
|
.button:has(:last-child:active)::before {
|
|
transition: all 400ms ease-in-out;
|
|
}
|
|
</style>
|