پیشنمایش زنده
کد HTML
<button class="emoji">
<div class="eyes">
<div class="eye1"></div>
<div class="eye2"></div>
</div>
<div class="mouth">
<div class="mask">
<div class="teeth"></div>
<div class="toungue"></div>
</div>
</div>
</button>
کد CSS
.emoji {
width: 222px;
height: 222px;
position: relative;
display: flex;
flex-direction: column;
gap: 15px;
justify-content: center;
align-items: center;
border-radius: 50%;
border: none;
margin: 0;
padding: 0px 45px;
padding-top: 15px;
outline: none;
cursor: pointer;
background: linear-gradient(130deg, #e8c486, #cb945b);
box-shadow:
inset 4px 4px 8px #ffe1ae,
inset -4px -4px 8px #7f6537;
transition: all 0.2s ease-in-out;
overflow: hidden;
}
.emoji:hover {
box-shadow:
inset 2px 2px 6px #ffe1ae,
inset -2px -2px 6px #7f6537;
transform: scale(1.05);
transition: all 0.4s ease-in-out;
}
.emoji:active {
box-shadow: none;
transform: scale(1.02);
transition: all 0.2s ease-in-out;
}
.eyes {
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
}
.eye1,
.eye2 {
width: 55px;
height: 58px;
position: relative;
background: linear-gradient(
120deg,
rgb(255, 255, 255),
rgb(238, 238, 238),
rgb(234, 234, 234)
);
border-radius: 50%;
box-shadow:
-2px -2px 2px rgba(190, 190, 190, 0.686) inset,
2px 2px 2px rgba(0, 0, 0, 0.268);
}
.eye1::before {
content: "";
position: absolute;
width: 25px;
height: 26px;
background: linear-gradient(to bottom, rgb(153, 148, 148), black);
top: 50%;
left: 54%;
transform: translateX(-50%) translateY(-50%);
border-radius: 50%;
box-shadow:
inset 3px 3px 4px rgba(0, 0, 0, 0.345),
2px 2px 4px rgba(0, 0, 0, 0.282);
}
.eye2::before {
content: "";
position: absolute;
width: 25px;
height: 26px;
background: linear-gradient(310deg, rgb(0, 0, 0), rgb(141, 136, 136));
top: 50%;
left: 54%;
transform: translateX(-50%) translateY(-50%);
border-radius: 50%;
box-shadow:
inset 3px 3px 4px rgba(0, 0, 0, 0.345),
2px 2px 4px rgba(0, 0, 0, 0.282);
}
.mouth {
width: 85%;
height: 65px;
display: flex;
justify-content: center;
align-items: center;
position: relative;
background: linear-gradient(170deg, #a66d31, #d1bb95);
border: none;
border-radius: 70px 70px 300px 300px;
transition:
width 0.3s ease,
transform 0.3s ease,
border-radius 0.3s ease;
z-index: 0;
box-shadow:
inset 2px 2px 10px #a66d31,
inset -4px -4px 15px #ffe9c4;
overflow: hidden;
}
.mouth .mask {
position: relative;
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: center;
width: 90%;
height: 85%;
background: #3b0a02;
border-radius: 50px 50px 300px 300px;
z-index: 1;
overflow: hidden;
}
.teeth {
width: 100%;
height: 30px;
position: absolute;
top: -8px;
background: linear-gradient(
to bottom,
rgb(237, 237, 237),
rgb(255, 248, 248)
);
border-radius: 10px 10px 10px 10px;
box-shadow: 5px 10px 10px #00000080 inset;
}
.toungue {
width: 52%;
height: 30px;
position: absolute;
bottom: -8px;
background: linear-gradient(to top, #dda8ba, #894151);
border-radius: 50px 50px 20px 20px;
box-shadow: 4px 4px 7px #00000050 inset;
}