#container
button.btn#btn-1
span Blur on hover
button.btn#btn-2
span Clear on hover
View Compiled
$blur: 4px;
$max: 870px;
$min: 0px;
$url: 'https://images.unsplash.com/photo-1458682625221-3a45f8a844c7?ixlib=rb-0.3.5&q=85&fm=jpg&crop=entropy&cs=srgb&ixid=eyJhcHBfaWQiOjE0NTg5fQ&s=71fe1cccc16ab8dbd431de076c68802b';
*, *:before, *:after {
box-sizing: inherit;
}
html,body {
width: 100%;
height: 100%;
overflow: hidden;
box-sizing: border-box;
}
#container {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
justify-content: center;
gap: 32px;
position: relative;
text-align: center;
background: url($url) no-repeat center;
background-size: cover;
}
.btn {
width: 280px;
height: 56px;
flex-shrink: 0;
margin: 0 auto;
position: relative;
overflow: hidden;
background: transparent;
border: 2px solid white;
color: white;
font-family: Roboto,sans-serif;
font-size: 18px;
letter-spacing: 0.8px;
text-transform: uppercase;
cursor: pointer;
&:focus { outline: none; }
&:before {
content: "";
padding: 100%;
background: url($url) no-repeat;
background-size: cover;
background-attachment: fixed;
background-position: 50%;
}
span {
position: absolute;
top: 50%;
right: 0;
left: 0;
transform: translateY(-50%);
z-index: 9;
}
&#btn-1 {
&:before {
transition: all 0.3s ease;
}
&:hover:before {
-webkit-filter: blur($blur);
filter: blur($blur);
}
}
&#btn-2 {
&:before {
transition: all 0.3s ease;
-webkit-filter: blur($blur);
filter: blur($blur);
}
&:hover:before {
-webkit-filter: blur(0);
filter: blur(0);
}
}
}
View Compiled
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.