SideBar PLUS Icon with Animation || POP UP icon Box || Icon Interaction in HTML
Here is the best code for pop up icon box with the animation effect. These icons will be use in the many website for users attraction. Do the code now..!
#CODE : --
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
<style type="text/css">
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
--light-color: #f8f9fd;
background: #FF6347;
}
.container {
position: relative;
display: flex;
flex-wrap: wrap;
justify-content: space-around;
align-items: center;
width: 200px;
height: 200px;
background: var(--light-color);
box-shadow: inset 6px 6px 10px 0 rgba(0, 0, 0, .2),
inset -6px -6px 10px 0 rgba(255, 255, 255, .5);
border-radius: 15%;
}
button, label {
border: 0;
background: none;
cursor: pointer;
color: #004466;
-webkit-tap-highlight-color: transparent;
}
label {
display: flex;
justify-content: center;
align-items: center;
}
input {
display: none;
}
button:focus {
outline: none;
}
label span, button span {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
label:active span, button:active span {
transition: .2s;
width: 100%;
height: 100%;
border-radius: 100%;
overflow: hidden;
box-shadow: inset 8px 8px 16px 0 rgba(0, 0, 0, .2),
inset -8px -8px 16px 0 rgba(255, 255, 255, .4);
}
.item {
width: 40%;
height: 40%;
border-radius: 50%;
transition: .5s;
font-size: 0;
}
.container .item:nth-of-type(1) {
transform: translate(125%, 125%);
}
.container .item:nth-of-type(2) {
transform: translateY(125%);
}
.container .item:nth-of-type(3) {
transform: translateX(125%);
}
#show:checked ~ .item {
font-size: 1.5rem;
transform: translate(0, 0);
background: linear-gradient(-45deg, #8fcdff1a, rgba(255, 255, 255, .2));
box-shadow: 5px 5px 15px 0 rgba(0, 0, 0, .2),
-8px -8px 5px 0 rgba(255, 255, 255, .2);
}
#show ~ label span svg {
font-size: 1.5rem;
}
#show ~ label span svg:last-of-type {
font-size: 0;
}
#show:checked ~ label span svg {
font-size: 0;
}
#show:checked ~ label span svg:last-of-type {
font-size: 1.5rem;
}
.container .item.show {
transform: translate(0, 0);
z-index: 100;
font-size: 1.5rem;
background: linear-gradient(-45deg, #8fcdff1a, rgba(255, 255, 255, .2));
box-shadow: 5px 5px 15px 0 rgba(0, 0, 0, .2),
-8px -8px 5px 0 rgba(255, 255, 255, .2);
}
.item.show {
display: block;
transition: .2s;
}
</style>
</head>
<body>
<div class="container">
<input type="checkbox" name="show" id="show" />
<button class="item">
<span>
<i class="fa fa-image"></i>
</span>
</button>
<button class="item">
<span>
<i class="fa fa-video"></i>
</span>
</button>
<button class="item">
<span>
<i class="fa fa-sticky-note"></i>
</span>
</button>
<label for="show" class="item show">
<span>
<i class="fa fa-plus"></i>
<i class="fa fa-times"></i>
</span>
</label>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/js/all.min.js" integrity="sha256-KzZiKy0DWYsnwMF+X1DvQngQ2/FxF7MF3Ff72XcpuPs=" crossorigin="anonymous"></script>
</body>
</html>
#OUTPUT : --
Comments
Post a Comment