mirror of
https://github.com/uiverse-io/galaxy.git
synced 2025-11-28 13:10:21 +08:00
103 lines
2 KiB
HTML
103 lines
2 KiB
HTML
<button class="button">
|
|
<span class="base"></span>
|
|
<span class="red"></span>
|
|
</button>
|
|
<style>
|
|
/* From Uiverse.io by r7chardgh - Tags: 3d, button, nuclear-button */
|
|
.button {
|
|
display: flex;
|
|
position: relative;
|
|
background: none;
|
|
border: 0;
|
|
transform-style: preserve-3d;
|
|
transform: rotateX(45deg)rotateZ(45deg);
|
|
cursor: pointer;
|
|
}
|
|
|
|
.button > .red {
|
|
position: absolute;
|
|
width: 1.5em;
|
|
height: 1.5em;
|
|
border-radius: 50%;
|
|
top: 50%;
|
|
left: 50%;
|
|
background-color: rgb(255, 49, 49);
|
|
transform: translate(-50%,-50%);
|
|
transform-style: preserve-3d;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
|
|
.red::before {
|
|
content: "";
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 1em;
|
|
left: 0;
|
|
background-color: rgb(255, 49, 49);
|
|
transform: rotateZ(-45deg) translateY(-.5em);
|
|
transition: height 150ms, transform 150ms;
|
|
}
|
|
|
|
.red::after {
|
|
content: "";
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
border-radius: 50%;
|
|
background-color: rgb(255, 49, 49);
|
|
transform: rotateZ(-45deg) translateY(-1em);
|
|
transition: transform 150ms;
|
|
border: 1px solid rgb(255, 196, 196);
|
|
}
|
|
|
|
.button > .base {
|
|
position: relative;
|
|
width: 3em;
|
|
height: 3em;
|
|
background-color: rgb(245, 216, 90);
|
|
transform-style: preserve-3d;
|
|
border-bottom: 1px solid rgb(255, 255, 255);
|
|
border-right: 1px solid rgb(255, 255, 255);
|
|
}
|
|
|
|
.base::before {
|
|
content: "";
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
background-color: rgb(245, 216, 90);
|
|
transform-origin: bottom;
|
|
transform: rotateX(90deg);
|
|
border-right: 1px solid #fff;
|
|
}
|
|
|
|
.base::after {
|
|
content: "";
|
|
position: absolute;
|
|
width: 100%;
|
|
height: 100%;
|
|
top: 0;
|
|
left: 0;
|
|
background-color: rgb(245, 216, 90);
|
|
transform-origin: right;
|
|
transform: rotateY(-90deg);
|
|
border-left: 1px solid #fff;
|
|
}
|
|
|
|
.button:active>.red::before {
|
|
transform: rotateZ(-45deg) translateY(0);
|
|
height: 0;
|
|
}
|
|
|
|
.button:active>.red::after {
|
|
transform: rotateZ(-45deg) translateY(0);
|
|
}
|
|
|
|
|
|
</style>
|