TIP
利用纯css画一个萌萌的猫咪
直接上代码
点击查看源码
vue
<template>
<div class="miao">
<div class="miao-head"></div>
<div class="ear ear-left"></div>
<div class="ear ear-right"></div>
<div class="eyebrow eyebrow-left"></div>
<div class="eyebrow eyebrow-right"></div>
<div class="eye eye-left"></div>
<div class="eye eye-right"></div>
<div class="nose"></div>
<div class="cheek cheek-left"></div>
<div class="cheek cheek-right"></div>
<div class="mouse"></div>
<div class="beard beard-left"></div>
<div class="beard beard-right"></div>
<div class="foot foot-left">
<div class="toe toe1"></div>
<div class="toe toe2"></div>
<div class="toe toe3"></div>
<div class="toe toe4"></div>
<div class="sole"></div>
</div>
<div class="foot foot-right">
<div class="toe toe1"></div>
<div class="toe toe2"></div>
<div class="toe toe3"></div>
<div class="toe toe4"></div>
<div class="sole"></div>
</div>
</div>
</template>
<style scoped>
.miao {
position: relative;
z-index: 1;
width: 400px;
height: 300px;
margin-top: 20px;
margin-bottom: -20px;
}
.miao-head {
position: absolute;
left: 50%;
z-index: 1;
width: 350px;
height: 270px;
background: #29b7cb;
border-radius: 50% / 60% 60% 40% 40%;
transform: translate(-50%, 0);
}
.ear {
position: absolute;
top: 30px;
z-index: 0;
width: 100px;
height: 150px;
box-sizing: border-box;
padding: 10px;
background: #0eb0c9;
border-radius: 50% / 10%;
}
.ear-left {
left: 30px;
transform: rotate(-20deg);
}
.ear-right {
right: 30px;
transform: rotate(20deg);
}
.ear::after {
content: '';
display: block;
width: 90%;
height: 90%;
background: #51c4d3;
border-radius: 50% / 10%;
}
.eyebrow {
position: absolute;
top: 50px;
z-index: 2;
width: 70px;
height: 20px;
border-top: 4px solid #000;
border-top-left-radius: 50%;
border-top-right-radius: 50%;
}
.eyebrow-left {
left: 80px;
transform: rotate(-30deg);
}
.eyebrow-right {
right: 80px;
transform: rotate(30deg);
}
.eye {
position: absolute;
top: 70px;
z-index: 2;
width: 70px;
height: 70px;
border: 2px solid #000;
border-radius: 50%;
transition: all 500ms ease-in-out;
}
.eye-left {
left: 90px;
}
.eye-right {
right: 90px;
}
.eye::after {
content: '';
position: absolute;
top: 30%;
left: 25%;
width: 50%;
height: 50%;
background: #000;
border-radius: 50%;
}
.eye-up::after {
top: 0;
}
.eye-btm::after {
top: unset;
bottom: 0;
}
.nose {
position: absolute;
top: 150px;
left: 50%;
z-index: 2;
transform: translateX(-50%);
width: 30px;
height: 15px;
background: #000;
border-radius: 60% / 50%;
}
.nose::after {
content: '';
position: absolute;
left: 50%;
bottom: 0;
transform: translate(-50%, 100%);
width: 3px;
height: 15px;
background: #000;
}
.cheek {
position: absolute;
top: 150px;
left: 50%;
z-index: 2;
width: 70px;
height: 40px;
border-bottom: 4px solid #000;
border-bottom-left-radius: 50%;
border-bottom-right-radius: 50%;
}
.cheek-left {
transform: translateX(-100%);
}
.mouse {
position: absolute;
top: 160px;
left: 50%;
z-index: 2;
transform: translateX(-50%);
width: 50px;
height: 50px;
background-image: linear-gradient(to bottom, transparent 60%, #000 60%);
border-bottom: 4px solid #000;
border-bottom-left-radius: 50%;
border-bottom-right-radius: 50%;
}
.beard {
position: absolute;
top: 160px;
left: 50%;
z-index: 2;
width: 120px;
height: 20px;
border-top: 2px solid #000;
border-top-left-radius: 50%;
border-top-right-radius: 50%;
}
.beard-left {
transform: translateX(-200%);
}
.beard-right {
transform: translateX(100%);
}
.beard::before,
.beard::after {
content: '';
position: absolute;
left: 0;
width: 120px;
height: 20px;
border-top: 2px solid #000;
border-top-left-radius: 50%;
border-top-right-radius: 50%;
}
.beard::before {
top: -10px;
}
.beard::after {
top: 10px;
}
.beard-left::before,
.beard-left::after {
transform-origin: right center;
}
.beard-right::before,
.beard-right::after {
transform-origin: left center;
}
.beard-left::before,
.beard-right::after {
transform: rotate(20deg);
}
.beard-left::after,
.beard-right::before {
transform: rotate(-20deg);
}
.foot {
position: absolute;
bottom: 0;
width: 70px;
height: 50px;
background: #29b7cb;
border-radius: 60% / 50%;
}
.foot-left {
left: 0;
}
.foot-right {
right: 0;
}
.toe {
position: absolute;
top: 50%;
left: 50%;
width: 15px;
height: 10px;
margin-top: -5px;
margin-left: -7px;
background: #51c4d3;
border-radius: 50%;
}
.toe1 {
transform: translate(-25px, -5px) rotate(-30deg);
}
.toe2 {
transform: translate(-10px, -14px) rotate(-10deg);
}
.toe3 {
transform: translate(10px, -14px) rotate(10deg);
}
.toe4 {
transform: translate(25px, -5px) rotate(30deg);
}
.sole {
position: absolute;
top: 44%;
left: 30%;
width: 30px;
height: 20px;
background: #51c4d3;
border-radius: 50%;
}
</style>
你还不知道猫咪有这么多品种吧,快快打开微信扫一扫