css实现夏日海中冲浪划船动画效果代码
代码语言:html
所属分类:动画
代码描述:css实现夏日海中冲浪划船动画效果代码
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en" >
<head>
<meta charset="UTF-8">
<style>
body {
background: #fff;
height: 100vh;
overflow: hidden;
display: flex;
font-family: "Anton", sans-serif;
justify-content: center;
align-items: center;
perspective: 500px;
}
div {
transform-style: preserve-3d;
}
.sea {
position: absolute;
left: -300px;
top: -300px;
}
.sea .surface {
position: absolute;
height: 600px;
width: 600px;
background: #2BE3FA;
overflow: hidden;
-webkit-animation: surface 13000ms ease-in-out infinite alternate, rotateZ 20000ms linear infinite;
animation: surface 13000ms ease-in-out infinite alternate, rotateZ 20000ms linear infinite;
}
.sea .surface .inner {
width: 600px;
height: 600px;
animation: rotateZ 20000ms linear infinite reverse;
}
.ship {
position: absolute;
top: -15px;
left: -50px;
filter: drop-shadow(-30px 40px 0 rgba(0, 0, 0, 0.1));
}
.ship .rotate {
transform: rotateZ(10deg);
-webkit-animation: ship 30000ms linear infinite alternate;
animation: ship 30000ms linear infinite alternate;
}
.ship .human {
position: absolute;
top: 0;
left: 40px;
}
.ship .human .hat {
position: absolute;
width: 30px;
height: 30px;
background: #F0F09E;
border-radius: 100%;
-webkit-animation: hat 1000ms ease-in-out infinite alternate;
animation: hat 1000ms ease-in-out infinite alternate;
}
.ship .human .hat::before {
content: "";
position: absolute;
top: 7px;
left: 7px;
width: 16px;
height: 16px;
border: 1px solid #D9845D;
border-radius: 100%;
box-sizing: border-box;
transform: translateZ(5px);
transform-style: preserve-3d;
}
.ship .human .leg {
position: absolute;
width: 20px;
height: 8px;
background: #0849A3;
border-radius: 40%;
}
.ship .human .leg::before {
content: "";
position: absolute;
left: -4px;
width: 5px;
height: 7px;
background: #fff;
border-radius: 40%;
}
.ship .human .leg.-left {
top: 16px;
left: -10px;
transform: rotateZ(-5deg);
}
.ship .human .leg.-left::before {
top: 1px;
}
.ship .human .leg.-right {
top: 6px;
left: -10px;
transform: rotateZ(5deg);
}
.ship .human .leg.-right::before {
top: -1px;
}
.ship .body {
position: relative;
}
.ship .body .base {
width: 100px;
height: 30px;
background: #D9845D;
border-radius: 45% 45% 45% 45%;
}
.ship .body .base::before {
content: "";
position: absolute;
top: 2px;
left: 2px;
width: 96px;
height: 26px;
background: #DEAD5E;
border-radius: 100%;
border-radius: 45% 45% 45% 45%;
}
.ship .body .board {
position: absolute;
top: 5px;
width: 10px;
height: 20px;
background: #D9845D;
border-radius: 2px;
}
.ship .body .board.-front {
right: 20px;
}
.ship .body .board.-back {
left: 20px;
}
.ship .body .waves {
position: absolute;
}
.ship .body .waves .wave {
position: absolute;
-webkit-animation: wave 2000ms linear infinite;
animation: wave 2000ms linear infinite;
}
.ship .body .waves .wave .graphic {
background: #fff;
-webkit-animation: surface 2000ms ease-in-out infinite alternate, rotateZ 6000ms linear infinite;
animation: surface 2000ms ease-in-out infinite alternate, rotateZ 6000ms linear infinite;
}
.ship .body .waves .bodywaves .wave:nth-child(1) {
top: 2px;
left: 13px;
-webkit-animation-delay: -1597ms;
animation-delay: -1597ms;
}
.ship .body .waves .bodywaves .wave:nth-child(1) .graphic {
width: 11px;
height: 12px;
}
.ship .body .waves .bodywaves .wave:nth-child(2) {
top: -1px;
left: 37px;
-webkit-animation-delay: -1835ms;
animation-delay: -1835ms;
}
.ship .body .waves .bodywaves .wave:nth-child(2) .graphic {
width: 18px;
height: 12px;
}
.ship .body .waves .bodywaves .wave:nth-child(3) {
top: 11px;
left: 43px;
-webkit-animation-delay: -797ms;
animation-delay: -797ms;
}
.ship .body .waves .bodywaves .wave:nth-child(3) .graphic {
width: 11px;
height: 12px;
}
.ship .body .waves .bodywaves .wave:nth-child(4) {
top: 7px;
left: 25px;
-webkit-animation-delay: -3146ms;
animation-delay: -3146ms;
}
.ship .body .waves .bodywaves .wave:nth-child(4) .graphic {
width: 9px;
height: 17px;
}
.ship .body .waves .bodywaves .wave:nth-child(5) {
top: -2px;
left: 47px;
-webkit-animation-delay: -3741ms;
animation-delay: -3741ms;
}
.ship .body .waves .bodywaves .wave:nth-child(5) .graphic {
width: 11px;
height: 14px;
}
.ship .body .waves .bodywaves .wave:nth-child(6) {
top: 15px;
left: 49px;
-webkit-animation-delay: -3107ms;
animation-delay: -3107ms;
}
.ship .body .waves .bodywaves .wave:nth-child(6) .graphic {
width: 11px;
height: 16px;
}
.ship .body .waves .bodywaves .wave:nth-child(7) {
top: 13px;
left: 27px;
-webkit-animation-delay: -2166ms;
animation-delay: -2166ms;
}
.ship .body .waves .bodywaves .wave:nth-child(7) .graphic {
width: 13px;
height: 11px;
}
.ship .body .waves .bodywaves .wave:nth-child(8) {
top: 10px;
left: 54px;
-webkit-animation-delay: -3821ms;
animation-delay: -3821ms;
}
.ship .body .waves .bodywaves .wave:nth-child(8) .graphic {
width: 13px;
height: 14px;
}
.ship .body .waves .bodywaves .wave:nth-child(9) {
top: 9px;
left: 45px;
-webkit-animation-delay: -3382ms;
animation-delay: -3382ms;
}
.ship .body .waves .bodywaves .wave:nth-child(9) .graphic {
width: 16px;
height: 16px;
}
.ship .body .waves .bodywaves .wave:nth-child(10) {
top: -2px;
left: 37px;
-webkit-animation-delay: -1815ms;
animation-delay: -1815ms;
}
.ship .body .waves .bodywaves .wave:nth-child(10) .graphic {
width: 11px;
height: 15px;
}
.ship .body .waves .bodywaves .wave:nth-child(11) {
top: -2px;
left: 46px;
-webkit-animation-delay: -3339ms;
animation-delay: -3339ms;
}
.ship .body .waves .bodywaves .wave:nth-child(11) .graphic {
width: 11px;
height: 9px;
}
.ship .body .waves .bodywaves .wave:nth-child(12) {
top: 4px;
left: 30px;
-webkit-animation-delay: -2773ms;
animation-delay: -2773ms;
}
.ship .body .waves .bodywaves .wave:nth-child(12) .graphic {
width: 14px;
height: 18px;
}
.ship .body .waves .bodywaves .wave:nth-child(13) {
top: 9px;
left: 38px;
-webkit-animation-delay: -70ms;
animation-delay: -70ms;
}
.ship .body .waves .bodywaves .wave:nth-child(13) .graphic {
width: 13px;
height: 11px;
}
.ship .body .waves .bodywaves .wave:nth-child(14) {
top: 4px;
left: 25px;
-webkit-animation-delay: -2333ms;
animation-delay: -2333ms;
}
.ship .body .waves .bodywaves .wave:nth-child(14) .graphic {
width: 18px;
height: 17px;
}
.ship .body .waves .bodywaves .wave:nth-child(15) {
top: 12px;
left: 30px;
-webkit-animation-delay: -1178ms;
animation-delay: -1178ms;
}
.ship .body .waves .bodywaves .wave:nth-child(15) .graphic {
width: 18px;
height: 14px;
}
.ship .body .waves .bodywaves .wave:nth-child(16) {
top: 4px;
left: 59px;
-webkit-animation-delay: -1625ms;
animation-delay: -1625ms;
}
.ship .body .waves .bodywaves .wave:nth-child(16) .graphic {
width: 15px;
height: 12px;
}
.ship .body .waves .bodywaves .wave:nth-child(17) {
top: 4px;
left: 29px;
-webkit-animation-delay: -3097ms;
animation-delay: -3097ms;
}
.ship .body .waves .bodywaves .wave:nth-child(17) .graphic {
width: 16px;
height: 15px;
}
.ship .body .waves .bodywaves .wave:nth-child(18) {
top: 1px;
left: 47px;
-webkit-animation-delay: -1838ms;
animation-delay: -1838ms;
}
.ship .body .waves .bodywaves .wave:nth-child(18) .graphic {
width: 12px;
height: 10px;
}
.ship .body .waves .bodywaves .wave:nth-child(19) {
top: 16px;
left: 32px;
-webkit-animation-delay: -2615ms;
animation-delay: -2615ms;
}
.ship .body .waves .bodywaves .wave:nth-child(19) .graphic {
width: 15px;
height: 16px;
}
.ship .body .waves .bodywaves .wave:nth-child(20) {
top: 1px;
left: 30px;
-webkit-animation-delay: -988ms;
animation-delay: -988ms;
}
.ship .body .waves .bodywaves .wave:nth-child(20) .graphic {
width: 17px;
height: 17px;
}
.ship .body .waves .bodywaves .wave:nth-child(21) {
top: 8px;
left: 55px;
-webkit-animation-delay: -2783ms;
animation-delay: -2783ms;
}
.ship .body .waves .bodywaves .wave:nth-child(21) .graphic {
width: 18px;
height: 12px;
}
.ship .body .waves .bodywaves .wave:nth-child(22) {
top: 1px;
left: 17px;
-webkit-animation-delay: -512ms;
animation-delay: -512ms;
}
.ship .body .waves .bodywaves .wave:nth-child(22) .graphic {
width: 13px;
height: 14px;
}
.ship .body .waves .bodywaves .wave:nth-child(23) {
top: 12px;
left: 46px;
-webkit-animation-delay: -1875ms;
animation-delay: -1875ms;
}
.ship .body .waves .bodywaves .wave:nth-child(23) .graphic {
width: 13px;
height: 10px;
}
.ship .body .waves .bodywaves .wave:nth-child(24) {
top: 11px;
left: 13px;
-webkit-animation-delay: -2327ms;
animation-delay: -2327ms;
}
.ship .body .waves .bodywaves .wave:nth-child(24) .graphic {
width: 16px;
height: 17px;
}
.ship .body .waves .bodywaves .wave:nth-child(25) {
top: 16px;
left: 59px;
-webkit-animation-delay: -3560ms;
animation-delay: -3560ms;
}
.ship .body .waves .bodywaves .wave:nth-child(25) .graphic {
width: 16px;
height: 9px;
}
.ship .body .waves .bodywaves .wave:nth-child(26) {
top: 13px;
left: 57px;
-webkit-animation-delay: -3630ms;
animation-delay: -3630ms;
}
.ship .body .waves .bodywaves .wave:nth-child(26) .graphic {
width: 11px;
height: 11px;
}
.ship .body .waves .bodywaves .wave:nth-child(27) {
top: -1px;
left: 38px;
-webkit-animation-delay: -2488ms;
animation-delay: -2488ms;
}
.ship .body .waves .bodywaves .wave:nth-child(27) .graphic {
width: 13.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0