galaxy/Buttons/doniaskima_heavy-skunk-100.html

113 lines
2.2 KiB
HTML

<button class="btn-25"><span>Button</span></button>
<style>
/* From Uiverse.io by doniaskima - Tags: button, animated */
.btn-25,
.btn-25 *,
.btn-25 :after,
.btn-25 :before,
.btn-25:after,
.btn-25:before {
border: 0 solid;
box-sizing: border-box;
}
.btn-25 {
-webkit-tap-highlight-color: transparent;
-webkit-appearance: button;
background-color: #000;
background-image: none;
color: #fff;
cursor: pointer;
font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif,
Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
font-size: 100%;
font-weight: 900;
line-height: 1.5;
margin: 0;
-webkit-mask-image: -webkit-radial-gradient(#000, #fff);
padding: 0;
text-transform: uppercase;
}
.btn-25:disabled {
cursor: default;
}
.btn-25:-moz-focusring {
outline: auto;
}
.btn-25 svg {
display: block;
vertical-align: middle;
}
.btn-25 [hidden] {
display: none;
}
.btn-25 {
--background: #000;
background: none;
overflow: hidden;
padding: 0.8rem 3rem;
position: relative;
}
.btn-25 span {
display: block;
position: relative;
transition: transform 0.2s ease;
}
.btn-25:after,
.btn-25:before {
--tilt: 20px;
background: #fff;
-webkit-clip-path: polygon(0 50%, 0 0, 100% 0, 100% 50%, 100% 100%, 0 100%);
clip-path: polygon(0 50%, 0 0, 100% 0, 100% 50%, 100% 100%, 0 100%);
content: "";
display: block;
height: 100%;
left: 0;
position: absolute;
top: 0;
transition: -webkit-clip-path 0.2s ease;
transition: clip-path 0.2s ease;
transition: clip-path 0.2s ease, -webkit-clip-path 0.2s ease;
width: 100%;
z-index: -1;
}
.btn-25:after {
--thickness: 5px;
background: var(--background);
height: calc(100% - var(--thickness) * 2);
left: var(--thickness);
top: var(--thickness);
width: calc(100% - var(--thickness) * 2);
}
.btn-25:hover:after,
.btn-25:hover:before {
-webkit-clip-path: polygon(
0 50%,
var(--tilt) 0,
calc(100% - var(--tilt)) 0,
100% 50%,
calc(100% - var(--tilt)) 100%,
var(--tilt) 100%
);
clip-path: polygon(
0 50%,
var(--tilt) 0,
calc(100% - var(--tilt)) 0,
100% 50%,
calc(100% - var(--tilt)) 100%,
var(--tilt) 100%
);
}
</style>