div+css实现眼睛可跟随鼠标转动的猿猴效果代码
代码语言:html
所属分类:布局界面
代码描述:div+css实现眼睛可跟随鼠标转动的猿猴效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<style>
body {
display: -webkit-box;
display: flex;
-webkit-box-pack: center;
justify-content: center;
-webkit-box-align: center;
align-items: center;
height: 100vh;
width: 100vw;
overflow: hidden;
background: radial-gradient(circle at center, #333, #000);
}
body #grid {
width: 100vw;
height: 100vh;
display: grid;
grid-template-columns: 20vw 20vw 20vw 20vw 20vw;
}
body #grid .block {
position: relative;
z-index: 600;
}
body #grid .block:first-of-type:hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(-10px) translateY(0px);
transform: translateX(-10px) translateY(0px);
}
body #grid .block:nth-of-type(2):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(-7.5px) translateY(-5px);
transform: translateX(-7.5px) translateY(-5px);
}
body #grid .block:nth-of-type(3):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(-7.5px) translateY(-7.5px);
transform: translateX(-7.5px) translateY(-7.5px);
}
body #grid .block:nth-of-type(4):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(-5px) translateY(-10px);
transform: translateX(-5px) translateY(-10px);
}
body #grid .block:nth-of-type(5):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(0px) translateY(-10px);
transform: translateX(0px) translateY(-10px);
}
body #grid .block:nth-of-type(6):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(-10px) translateY(8px);
transform: translateX(-10px) translateY(8px);
}
body #grid .block:nth-of-type(7):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(-5px) translateY(5px);
transform: translateX(-5px) translateY(5px);
}
body #grid .block:nth-of-type(9):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(2.5px) translateY(-5px);
transform: translateX(2.5px) translateY(-5px);
}
body #grid .block:nth-of-type(10):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(8px) translateY(-9px);
transform: translateX(8px) translateY(-9px);
}
body #grid .block:nth-of-type(11):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(0px) translateY(8px);
transform: translateX(0px) translateY(8px);
}
body #grid .block:nth-of-type(12):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(4px) translateY(5px);
transform: translateX(4px) translateY(5px);
}
body #grid .block:nth-of-type(13):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(5px) translateY(4px);
transform: translateX(5px) translateY(4px);
}
body #grid .block:nth-of-type(14):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(9px) translateY(-2px);
transform: translateX(9px) translateY(-2px);
}
body #grid .block:nth-of-type(15):hover ~ .wrap .head .eye:before {
-webkit-transform: translateX(10px) translateY(-4px);
transform: translateX(10px) translateY(-4px);
}
body .wrap {
opacity: 1;
height: 450px;
width: 700px;
position: absolute;
left: 50%;
top: 50%;
-webkit-transform: translateX(-50%) translateY(-50%);
transform: translateX(-50%) translateY(-50%);
z-index: 2;
opacity: 1;
}
body .wrap.fade {
opacity: 0.5;
}
body .wrap .helmet {
position: absolute;
width: 185px;
height: 100px;
background: #000;
left: 250px;
overflow: hidden;
z-index: 0;
top: 40px;
opacity: 1;
border-radius: 500px 500px 0 0 / 650px 650px 0 0;
-webkit-transform: rotate(-5deg);
transform: rotate(-5deg);
box-shadow: inset -3px 5px 30px rgba(255, 255, 255, 0.15);
}
body .wrap .helmet:before, body .wrap .helmet:after {
content: '';
width: 35px;
height: 12px;
position: absolute;
box-shadow: 5px 0px 20px rgba(255, 255, 255, 0.75), 5px -12px 5px #000, 10px -20px 5px -2px rgba(255, 255, 255, 0.45);
border-radius: 5px;
-webkit-filter: blur(1px);
filter: blur(1px);
left: 25px;
bottom: 40px;
-webkit-transform: rotate(-10deg);
transform: rotate(-10deg);
}
body .wrap .helmet:after {
left: 120px;
bottom: 40px;
-webkit-transform: scale(1.1) scaleX(-1) rotate(-10deg);
transform: scale(1.1) scaleX(-1) rotate(-10deg);
-webkit-filter: blur(2px);
filter: blur(2px);
width: 40px;
}
body .wrap .head {
position: absolute;
width: 250px;
height: 350px;
left: 220px;
top: 100px;
z-index: 2;
}
body .wrap .head:before {
content: '';
position: absolute;
width: 95%;
height: 85%;
left: 6%;
top: 2.5%;
border-radius: 500px 500px 600px 600px / 500px 500px 800px 800px;
background: #222;
-webkit-filter: blur(5px);
filter: blur(5px);
}
body .wrap .head .mouth {
position: absolute;
width: 122.5px;
height: 30px;
top: 80px;
left: 70px;
z-index: 7;
border-radius: 0 0 400px 400px / 0 0 180px 180px;
border-bottom: 20px solid #000;
box-shadow: 0 5px 0 #000, inset -10px -5px 0 -15px #000;
-webkit-transform: rotate(-7deg);
transform: rotate(-7deg);
}
body .wrap .head .mouth .tongue {
position: absolute;
width: 35px;
height: 35px;
box-shadow: 0 5px 0 red;
border-radius: 50% / 20%;
-webkit-filter: blur(2px);
filter: blur(2px);
left: 40px;
top: 15px;
opacity: 0.75;
}
body .wrap .head .mouth .tongue:before, body .wrap .head .mouth .tongue:after {
content: '';
position: absolute;
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 20px 15px;
border-color: transparent transparent #222 transparent;
top: -18px;
left: 2.5px;
-webkit-filter: blur(2px);
filter: blur(2px);
}
body .wrap .head .mouth .tongue:after {
border-width: 20px 0 0 15px;
border-color: transparent transparent transparent #222;
left: 22.5px;
}
body .wrap .head .mouth:after {
content: '';
position: absolute;
width: calc(100% + 20px);
height: 25px;
top: 0px;
left: -10px;
border-radius: 50px;
background: repeating-linear-gradient(to right, #b92403, #b92403 2.5px, #fb4d27 2.5px, #fb4d27 2.5px, #b92403 6px, #b92403 6px, #fb4d27 6px, #fb4d27 6.5px, #b92403 6.5px);
opacity: 0.5;
-webkit-filter: blur(2px);
filter: blur(2px);
}
body .wrap .head .mouth:before {
content: '';
position: absolute;
width: 122.5px;
height: 30px;
top: 33px;
left: 0;
z-index: 9;
border-radius: 0 0 400px 400px / 0 0 180px 180px;
box-shadow: 0 1px 20px -2px #f29e03, inset 0 -1px 5px -2px #fcaa13, inset -10px -5px 0 -15px #b92403, inset 0 -7px 10px #b92403, inset 0 -10px 0;
-webkit-transform: scaleX(1) scaleY(1.5);
transform: scaleX(1) scaleY(1.5);
z-index: -1;
}
body .wrap .head .eye {
position: absolute;
width: 45px;
height: 45px;
z-index: 9;
background: #fff;
border-radius: 50px 35px 50px 40px;
left: 68px;
opacity: 0.5;
top: 40px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
box-shadow: inset -1px 0 0 2px #000, inset -5px 5px 30px #555, 5px 5px 10px 1px #b92403, 9px 3px 10px 0 #281a01, -10px 20px 10px #b92403;
}
body .wrap .head .eye:before {
content: '';
position: absolute;
width: 10px;
height: 10px;
background: #000;
border-radius: 100%;
top: 19px;
left: 19px;
box-shadow: 0 0 0 3px #fcb32c, 0 0 0 4px #b92403, 0 0 0 5px #000;
-webkit-transition: 0.35s ease-in-out;
transition: 0.35s ease-in-out;
}
body .wrap .head .eye:nth-of-type(2) {
height: 47.5px;
width: 47.5px;
border-radius: 50px 40px 50px 30px;
left: 135px;
top: 32px;
box-shadow: inset -1px 0 0 3px #000, inset 5px -5px 30px #555, 5px 5px 10px 1px #b92403, 9px 4px 15px 0 #281a01, 15px -10px 15px #b92403;
}
body .wrap .head .eye:nth-of-type(2):before {
-webkit-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(1) {
-webkit-transform: scaleX(-1) rotate(52.5deg);
transform: scaleX(-1) rotate(52.5deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(2) {
-webkit-transform: scaleX(-1) rotate(60deg);
transform: scaleX(-1) rotate(60deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(3) {
-webkit-transform: scaleX(-1) rotate(67.5deg);
transform: scaleX(-1) rotate(67.5deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(4) {
-webkit-transform: scaleX(-1) rotate(75deg);
transform: scaleX(-1) rotate(75deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(5) {
-webkit-transform: scaleX(-1) rotate(82.5deg);
transform: scaleX(-1) rotate(82.5deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(6) {
-webkit-transform: scaleX(-1) rotate(90deg);
transform: scaleX(-1) rotate(90deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(7) {
-webkit-transform: scaleX(-1) rotate(97.5deg);
transform: scaleX(-1) rotate(97.5deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(8) {
-webkit-transform: scaleX(-1) rotate(105deg);
transform: scaleX(-1) rotate(105deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(9) {
-webkit-transform: scaleX(-1) rotate(112.5deg);
transform: scaleX(-1) rotate(112.5deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(10) {
-webkit-transform: scaleX(-1) rotate(120deg);
transform: scaleX(-1) rotate(120deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(11) {
-webkit-transform: scaleX(-1) rotate(127.5deg);
transform: scaleX(-1) rotate(127.5deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(12) {
-webkit-transform: scaleX(-1) rotate(135deg);
transform: scaleX(-1) rotate(135deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(13) {
-webkit-transform: scaleX(-1) rotate(142.5deg);
transform: scaleX(-1) rotate(142.5deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(14) {
-webkit-transform: scaleX(-1) rotate(150deg);
transform: scaleX(-1) rotate(150deg);
}
body .wrap .head .eye:nth-of-type(2) .hair:nth-of-type(15) {
-webkit-transform: scaleX(-1) rotate(157.5deg);
transform: scaleX(-1) rotate(157.5deg);
}
body .wrap .head .eye .hair {
position: absolute;
width: 20px;
height: 50px;
border-radius: 75px 0 0 0 / 120px 0 0 0;
box-shadow: -0.25px -1px 0 -0.25px #fcb32c;
z-index: -1;
-webkit-transform-origin: 50px 20%;
transform-origin: 50px 20%;
left: -25px;
top: 20px;
-webkit-filter: blur(0.75px);
filter: blur(0.75px);
}
body .wrap .head .eye .hair:before {
content: '';
position: absolute;
width: inherit;
height: inherit;
box-shadow: inherit;
border-radius: inherit;
left: 5px;
top: -5px;
opacity: 0.75;
}
body .wrap .head .eye .hair:nth-of-type(2n) {
height: 60px;
box-shadow: -0.5px -1.5px 0 #fcaa13;
}
body .wrap .head .eye .hair:nth-of-type(3n) {
height: 55px;
box-shadow: -0.5px -1.5px 0 #f29e03;
}
body .wrap .head .eye .hair:nth-of-type(1) {
-webkit-transform: rotate(-17.5deg);
transform: rotate(-17.5deg);
}
body .wrap .head .eye .hair:nth-of-type(2) {
-webkit-transform: rotate(-10deg);
transform: rotate(-10deg);
}
body .wrap .head .eye .hair:nth-of-type(3) {
-webkit-transform: rotate(-2.5deg);
transform: rotate(-2.5deg);
}
body .wrap .head .eye .hair:nth-of-ty.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0