<!DOCTYPE html>
<html lang="en">
<head>
<title>圣诞</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<meta name="theme-color" content="#FFFFFF" />
<style>
body {
font-size: 150%;
height: 100vh;
background: #000;
background-image: linear-gradient(
to left top,
#ba4141,
#b73a39,
#b33230,
#b02a28,
#ac211f,
#a51c1a,
#9f1616,
#981011,
#8e0e0f,
#830c0d,
#790a0b,
#6f0808
);
}
.tree-container {
position: relative;
width: 300px;
height: 475px;
margin: auto;
z-index: -2;
overflow: hidden;
}
.tree {
position: absolute;
width: 100%;
height: 100%;
top: 5%;
}
.star {
position: absolute;
width: 100px;
height: 100px;
background: #a18006;
clip-path: polygon(
50% 0%,
61% 35%,
98% 35%,
68% 57%,
79% 91%,
50% 70%,
21% 91%,
32% 57%,
2% 35%,
39% 35%
);
left: 95px;
z-index: 4;
filter: drop-shadow(0.75em 0.75em 0.5em);
}
.cone {
width: 150px;
height: 100px;
border-radius: 45%;
background: radial-gradient(farthest-side at top, #026e46, #024e32);
-webkit-mask: conic-gradient(
from 150deg at top,
#0000,
#000 1deg 60deg,
#0000 61deg
);
}
.tree-cone1 {
position: absolute;
top: 50px;
width: 200px;
height: 180px;
left: 45px;
z-index: 3;
}
.tree-cone2 {
position: absolute;
top: 75px;
width: 240px;
height: 220px;
left: 25px;
z-index: 2;
}
.tree-cone3 {
position: absolute;
top: 115px;
width: 260px;
height: 240px;
left: 15px;
}
.trunk {
position: absolute;
top: 310px;
width: 75px;
height: 75px;
background: radial-gradient(farthest-side at top, #4e2402, #351801);
z-index: -1;
left: 105px;
}
.ornament {
position: absolute;
width: 30px;
height: 30px;
border-radius: 50%;
box-shadow: 0 0 3px #033b26;
z-index: 4;
}
.shine {
position: absolute;
width: 55%;
height: 55%;
top: 10%;
right: 11%;
border-radius: 50%;
background: white;
filter: opacity(60%);
}
.or1 {
left: 28%;
top: 34%;
background: #0742d9;
}
.or2 {
left: 60%;
top: 40%;
background: #c91212;
}
.or3 {
left: 20%;
top: 49%;
background: #dbb700;
}
.or4 {
left: 48%;
top: 55%;
background: #0742d9;
}
.or5 {
left: 70%;
top: 65%;
background: #dbb700;
}
.or6 {
left: 25%;
top: 63%;
background: #c91212;
}
.bells-container {
position: relative;
left: 80px;
top: 65px;
}
.bell1,
.bell2 {
width: 30px;
height: 0;
border-bottom: 35px solid #d4a429;
border-right: 6px solid transparent;
border-left: 6px solid transparent;
z-index: 11;
}
.bell1 {
position: relative;
top: 50px;
left: 50px;
transform: rotate(25deg);
}
.bell2 {
position: relative;
top: 15px;
left: 90px;
transform: rotate(-25deg);
}
.bell-top {
width: 30px;
height: 15px;
background-color: #d4a429;
position: relative;
bottom: 13px;
border-radius: 15px 15px 0 0;
}
.bell-bottom {
width: 41px;
height: 0;
border-bottom: 10px solid #d4a445;
border-right: 6px solid transparent;
border-left: 6px solid transparent;
position: relative;
top: 19px;
right: 11px;
border-radius: 0 0 7.5px 7.5px;
}
.bell-mid {
background-color: #d4a429;
height: 7.5px;
width: 15px;
position: relative;
top: 18.5px;
border-radius: 0 0 7.5px 7.5px;
}
.bow {
position: relative;
left: 68px;
bottom: 45px;
transform: rotate(-5deg);
z-index: 12;
}
.b1 {
height: 12.5px;
width: 0;
border-right: 20px solid #e95840;
border-top: 7.5px solid transparent;
border-bottom: 7.5px solid transparent;
position: relative;
bottom: 8.5px;
left: 30px;
}
.b2 {
height: 12.5px;
width: 0;
border-left: 20px solid #e95840;
border-top: 7.5px solid transparent;
border-bottom: 7.5px solid transparent;
position: relative;
bottom: 36px;
left: 0px;
}
.b3 {
background-color: #e4391b;
height: 20px;
width: 17.5px;
border-radius: 7.5px;
position: relative;
bottom: 60px;
left: 16px;
}
.shadow {
background-color: rgba(0, 0, 0, 0.07);
position: absolute;
width: 270px;
height: 40px;
border-radius: 50%;
top: 390px;
left: 10px;
z-index: -1;
}
.gift {
position: absolute;
width: 60px;
height: 50px;
background-color: #ffc857;
top: 365px;
left: 30px;
box-shadow: inset -8px 0 0 rgba(0, 0, 0, 0.07);
}
.gift:before {
content: '';
position: absolute;
width: 70px;
height: 20px;
left: -5px;
background-color: #ffc857;
box-shadow: inset -8px -4px 0 rgba(0, 0, 0, 0.07);
}
.gift:after {
content: '';
background-color: #db3a34;
width: 10px;
height: 50px;
position: absolute;
left: 25px;
}
.ribbon {
position: absolute;
width: 20px;
height: 10px;
border: 3px solid #db3a34;
border-radius: 50%;
transform: skew(15deg, 15deg);
top: 350px;
left: 35px;
}
.ribbon:before {
content: '';
position: absolute;
width: 20px;
height: 10px;
border: 3px solid #db3a34;
border-radius: 50%;
transform: skew(-15deg, -20deg);
left: 22px;
top: -8px;
}
.gift2 {
position: absolute;
width: 50px;
height: 40px;
background-color: #08bdbd;
top: 380px;
left: 150px;
box-shadow: inset -8px 0 0 rgba(0, 0, 0, 0.07);
}
.gift2:before {
content: '';
position: absolute;
width: 60px;
height: 15px;
background-color: #08bdbd;
left: -5px;
box-shadow: inset -8px -4px 0 rgba(0, 0, 0, 0.07);
}
.gift2:after {
content: '';
background-color: #abff4f;
width: 10px;
height: 40px;
position: absolute;
left: 20px;
}
.ribbon2 {
position: absolute;
width: 15px;
height: 7px;
border: 3px solid #abff4f;
border-radius: 50%;
transform: skew(15deg, 15deg);
top: 370px;
left: 155px;
}
.ribbon2:before {
content: '';
position: absolute;
width: 15px;
height: 7px;
border: 3px solid #abff4f;
border-radius: 50%;
transform: skew(-15deg, -20deg);
left: 15px;
top: -8px;
}
h1 {
font-family: 'Berkshire Swash';
font-weight: normal;
color: green;
padding-top: 5%;
text-align: center;
text-shadow: 10px 10px 5px black;
animation-name: move;
animation-iteration-count: infinite;
animation-duration: 4s;
}
@keyframes move {
0% {
transform: translate3d(0, 0, 0);
}
50% {
transform: translate3d(0, 0.75em, 0);
}
100% {
transform: translate3d(0, 0, 0);
}
}
.lightrope {
text-align: center;
white-space: nowrap;
overflow: hidden;
position: fixed;
z-index: 1;
margin: -15px 0 0 0;
padding: 0;
pointer-events: none;
width: 100%;
}
.lightrope li {
position: relative;
animation-fill-mode: both;
animation-iteration-count: infinite;
list-style: none;
margin: 0;
padding: 0;
display: block;
width: 12px;
height: 28px;
border-radius: 50%;
margin: 20px;
display: inline-block;
background: rgba(0, 247, 165, 1);
box-shadow: 0px 4.6666666667px 24px 3px rgba(0, 247, 165, 1);
animation-name: flash-1;
animation-duration: 2s;
}
.lightrope li:nth-child(2n + 1) {
background: rgba(0, 255, 255, 1);
box-shadow: 0px 4.6666666667px 24px 3px rgba(0, 255, 255, 0.5);
animation-name: flash-2;
animation-duration: 0.4s;
}
.lightrope li:nth-child(4n + 2) {
background: rgba(247, 0, 148, 1);
box-shadow: 0px 4.6666666667px 24px 3px rgba(247, 0, 148, 1);
animation-name: flash-3;
animation-duration: 1.1s;
}
.lightrope li:nth-child(odd) {
animation-duration: 1.8s;
}
.lightrope li:nth-child(3n + 1) {
animation-duration: 1.4s;
}
.lightrope li:before {
content: '';
position: absolute;
background: #222;
width: 10px;
height: 9.3333333333px;
border-radius: 3px;
top: -4.6666666667px;
left: 1px;
}
.lightrope li:after {
content: '';
top: -14px;
left: 9px;
position: absolute;
width: 52px;
height: 18.6666666667px;
border-bottom: solid #222 2px;
border-radius: 50%;
}
.lightrope li:last-child:after {
content: none;
}
.lightrope li:first-child {
margin-left: -40px;
}
@keyframes flash-1 {
0%,
100% {
background: rgba(0, 247, 165, 1);
box-shadow: 0px 4.6666666667px 24px 3px rgba(0, 247, 165, 1);
}
50% {
background: rgba(0, 247, 165, 0.4);
box-shadow: 0px 4.6666666667px 24px 3px rgba(0, 247, 165, 0.2);
}
}
@keyframes flash-2 {
0%,
100% {
background: rgba(0, 255, 255, 1);
box-shadow: 0px 4.6666666667px 24px 3px rgba(0, 255, 255, 1);
}
50% {
background: rgba(0, 255, 255, 0.4);
box-shadow: 0px 4.6666666667px 24px 3px rgba(0, 255, 255, 0.2);
}
}
@keyframes flash-3 {
0%,
100% {
background: rgba(247, 0, 148, 1);
box-shadow: 0px 4.6666666667px 24px 3px rgba(247, 0, 148, 1);
}
50% {
background: rgba(247, 0, 148, 0.4);
box-shadow: 0px 4.6666666667px 24px 3px rgba(247, 0, 148, 0.2);
}
}
@-webkit-keyframes snowflakes-fall {
0% {
top: -10%;
}
100% {
top: 100%;
}
}
@-webkit-keyframes snowflakes-shake {
0% {
transform: translateX(0px);
}
50% {
transform: translateX(80px);
}
100% {
transform: translateX(0px);
}
}
.snowflake {
position: fixed;
top: -10%;
z-index: 10;
color: #fff;
text-shadow: 0 0 1px #000;
font-size: 1em;
user-select: none;
cursor: default;
animation-name: snowflakes-fall, snowflakes-shake;
animation-duration: 10s, 3s;
animation-timing-function: linear, ease-in-out;
animation-iteration-count: infinite, infinite;
animation-play-state: running, running;
}
.snowflake:nth-of-type(0) {
left: 1%;
animation-delay: 0s, 0s;
}
.snowflake:nth-of-type(1) {
left: 10%;
animation-delay: 1s, 1s;
}
.snowflake:nth-of-type(2) {
left: 20%;
animation-delay: 2s, 2s;
}
.snowflake:nth-of-type(3) {
left: 30%;
animation-delay: 4s, 2s;
}
.snowflake:nth-of-type(4) {
left: 40%;
animation-delay: 2s, 2s;
}
.snowflake:nth-of-type(5) {
left: 50%;
animation-delay: 8s, 3s;
}
.snowflake:nth-of-type(6) {
left: 60%;
animation-delay: 6s, 2s;
}
.snowflake:nth-of-type(7) {
left: 70%;
animation-delay: 2.5s, 1s;
}
.snowflake:nth-of-type(8) {
left: 80%;
animation-delay: 1s, 0s;
}
.snowflake:nth-of-type(9) {
left: 80%;
animation-delay: 3s, 1.5s;
}
.flipdown {
margin: 0 auto;
}
.santa-container {
height: 480px;
width: 350px;
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
position: absolute;
animation-duration: 10s;
animation-iteration-count: infinite;
animation-name: plane-movement;
}
@keyframes plane-movement {
0% {
opacity: 1;
left: 100vw;
top: 20%;
}
50% {
opacity: 1;
left: 50vw;
top: 40%;
}
100% {
opacity: 1;
left: -100vw;
top: 20%;
}
}
svg {
position: absolute;
top: 0;
left: 0;
}
.plane {
position: relative;
-webkit-animation: float 3s infinite;
animation: float 3s infinite;
}
@-webkit-keyframes float {
50% {
-webkit-transform: translateY(25px);
transform: translateY(25px);
}
}
@keyframes float {
50% {
-webkit-transform: translateY(25px);
transform: translateY(25px);
}
}
.hand {
-webkit-transform: rotate(10deg);
-ms-transform: rotate(10deg);
transform: rotate(10deg);
-webkit-animation: wave 1.5s infinite;
animation: wave 1.5s infinite;
-webkit-transform-origin: center;
-ms-transform-origin: center;
transform-origin: center;
}
.blade {
-webkit-animation: spin 1s infinite linear;
animation: spin 1s infinite linear;
-webkit-transform-origin: 50% 54%;
-ms-transform-origin: 50% 54%;
transform-origin: 50% 54%;
}
@-webkit-keyframes spin {
100% {
-webkit-transform: rotateX(360deg);
transform: rotateX(360deg);
}
}
@keyframes spin {
100% {
-webkit-transform: rotateX(360deg);
transform: rotateX(360deg);
}
}
@-webkit-keyframes wave {
50% {
-webkit-transform: rotate(-10deg);
transform: rotate(-10deg);
}
}
@keyframes wave {
50% {
-webkit-transform: rotate(-10deg);
transform: rotate(-10deg);
}
}
@media screen and (min-width: 451px) {
a {
font-size: 20px;
padding: 8px 12px 8px 12px;
}
}
@media screen and (max-width: 450px) {
a {
font-size: 14px;
padding: 5px 8px 5px 8px;
}
}
.deer-container {
background-color: transparent;
border-radius: 4px;
box-shadow: 0 1px 3px transparent;
height: 300px;
width: 200px;
margin: 40px auto 50px auto;
position: relative;
bottom: 430px;
right: 190px;
}
.artboard {
height: 100%;
overflow: hidden;
position: relative;
width: 100%;
}
.deer {
width: 50px;
margin: 0 auto;
position: relative;
}
.rocking {
animation: rocking 0.4s ease-in-out infinite alternate-reverse;
transform-origin: bottom left;
position: relative;
z-index: 1;
}
@keyframes rocking {
100% {
transform: rotate(-1deg);
}
}
.head {
position: relative;
width: 50px;
}
.horns {
animation: rocking 0.4s cubic-bezier(0.4, 0, 0.2, 1) infinite alternate-reverse;
height: 55px;
position: relative;
top: 31px;
width: 50px;
}
.horn {
background-color: #91655d;
border-radius: 7px 7px 0 0;
height: 55px;
position: relative;
width: 7px;
z-index: 1;
}
.horn .line {
background-color: #91655d;
border-radius: 7px 7px 7px 7px;
height: 7px;
width: 20px;
margin-bottom: 15px;
position: relative;
top: 10px;
}
.horn-left {
top: -7px;
transform: rotate(-25deg);
}
.horn-left .line-one {
right: 12px;
transform: rotate(30deg);
}
.horn-left .line-two {
top: -2px;
left: 2px;
transform: rotate(-30deg);
}
.horn-left .line-three {
top: -15px;
right: 12px;
transform: rotate(30deg);
}
.horn-right {
bottom: 60px;
left: 40px;
transform: rotate(25deg);
}
.horn-right .line-one {
top: 7px;
right: 1px;
transform: rotate(-30deg);
}
.horn-right .line-two {
top: -2px;
right: 12px;
transform: rotate(30deg);
}
.horn-right .line-three {
top: -15px;
left: 0px;
transform: rotate(-30deg);
}
.ears {
position: absolute;
top: 70px;
}
.ear {
background-color: #91655d;
border-radius: 100% 50% 50% 50%;
height: 18px;
position: relative;
right: 20px;
top: 10px;
transform: rotate(30deg);
transform-origin: 100%;
width: 30px;
}
.ear:before {
background-color: #e7beb2;
border-radius: 100% 50% 50% 50%;
height: 9px;
content: '';
display: block;
left: 5px;
position: relative;
top: 5px;
width: 15px;
}
.ear-left {
animation: ear-left 2s cubic-bezier(0.6, -0.28, 0.74, 0.05) infinite alternate-reverse;
transform: rotate(30deg);
position: relative;
right: 20px;
top: 10px;
}
@keyframes ear-left {
85% {
transform: rotate(30deg);
}
100% {
transform: rotate(-10deg);
}
}
.ear-right {
animation: ear-right 2s cubic-bezier(0.6, -0.28, 0.74, 0.05) 2s infinite
alternate-reverse;
left: 10px;
right: 0;
top: -8px;
transform: rotate(160deg);
}
@keyframes ear-right {
85% {
transform: rotate(160deg);
}
100% {
transform: rotate(170deg);
}
}
.eyes {
position: absolute;
top: 90px;
right: -5px;
width: 32px;
z-index: 2;
}
.eyes .eye {
background: linear-gradient(0deg, white 50%, #aa8275 50%);
border-radius: 15px;
height: 15px;
width: 15px;
}
.eyes .eye-left {
float: left;
}
.eyes .eye:after {
animation: eyes 5s infinite alternate-reverse;
background-color: #495169;
border-radius: 5px;
height: 5px;
content: '';
display: block;
left: 5px;
position: relative;
top: -3px;
width: 5px;
}
@keyframes eyes {
0% {
transform: translate(3px, 2px);
}
75% {
transform: translate(3px, 2px);
}
}
.eyes .eye:before {
animation: eaves 5s infinite alternate-reverse;
background-color: #aa8275;
border-radius: 9px 9px 0 0;
height: 9px;
content: '';
display: block;
position: relative;
z-index: 1;
}
@keyframes eaves {
0% {
top: -1px;
}
}
.eyes .eye-right {
float: right;
}
.nose {
background-color: #91655d;
border-radius: 0 7px 15px;
top: 47px;
height: 18px;
left: 40px;
position: relative;
width: 20px;
z-index: 2;
}
.nose:before {
background-color: #fb5d5d;
border-radius: 15px;
content: '';
display: block;
height: 14px;
position: absolute;
right: -0.5px;
top: -0.5px;
width: 16px;
}
.nose:after {
background-color: white;
border-radius: 5px;
content: '';
display: block;
height: 2px;
position: absolute;
right: 4px;
top: 2px;
width: 5px;
}
.body {
background-color: #91655d;
border-radius: 50px 50px 0;
box-shadow: inset 7px 0 0 0 #9c7169;
height: 140px;
position: relative;
width: 50px;
z-index: 1;
}
.body:before {
background-color: #e7beb2;
border-radius: 20px 0 0 20px;
bottom: 20px;
box-shadow: inset -7px 0 0 0 #c39e9a;
content: '';
display: block;
height: 65px;
position: absolute;
right: 0;
width: 20px;
}
.hooves {
position: relative;
bottom: 40px;
right: 34px;
}
.hoof-one {
animation: jump 0.3s ease-in-out infinite alternate-reverse;
left: 10px;
position: relative;
top: 70px;
transform: rotate(25deg);
transform-origin: 100% 50%;
}
@keyframes jump {
100% {
transform: translateY(-2px) rotate(25deg);
}
}
.hoof-one .line {
height: 30px;
border: 20px solid;
border-radius: 40px;
border-color: transparent transparent #91655d transparent;
left: 25px;
width: 30px;
position: relative;
top: 5px;
transform: rotate(-30deg);
}
.hoof-one .anim-part {
position: relative;
bottom: 23px;
left: 81px;
transform: rotate(-75deg);
transform-origin: left;
}
.hoof-one .circle {
animation: hoof-one 0.3s ease-in-out infinite alternate-reverse;
background-color: #91655d;
height: 20px;
width: 20px;
border-radius: 30px;
transform: translateX(3px) rotate(0deg);
}
@keyframes hoof-one {
100% {
transform: translateX(2px) rotate(5deg);
}
}
.hoof-one .circle-last {
border-radius: 20px 0 0 20px;
transform: translateX(2px) rotate(0deg);
}
.hoof-one .circle-last:before {
content: '';
display: block;
border-top: 20px solid #674a4a;
border-left: 7px solid transparent;
height: 0;
left: 10px;
width: 7px;
position: relative;
z-index: 1;
}
.hoof-one .circle-last:after {
background-color: #ffb63c;
border-radius: 10px;
bottom: 30px;
content: '';
display: block;
height: 40px;
left: 19px;
position: relative;
width: 9px;
}
.hoof-two {
animation: jump-two 0.3s ease-in-out infinite alternate-reverse;
left: 55px;
position: relative;
top: 10px;
z-index: -1;
}
@keyframes jump-two {
100% {
transform: translateY(2px);
}
}
.hoof-two .line-one {
transform: rotate(-45deg);
height: 10px;
border: 20px solid;
border-radius: 40px;
border-color: transparent transparent #91655d transparent;
width: 10px;
position: absolute;
}
.hoof-two .line-two {
left: 30px;
transform: rotate(135deg);
height: 10px;
border: 20px solid;
border-radius: 40px;
border-color: transparent transparent #91655d transparent;
width: 10px;
position: absolute;
}
.tail {
background-color: #9c7169;
bottom: 0;
left: 4px;
position: absolute;
width: 20px;
z-index: 0;
}
@keyframes tail {
10% {
transform: rotate(2deg);
}
20% {
transform: rotate(-5deg);
}
}
.tail .circle {
-webkit-animation: tail 2s cubic-bezier(0, 0.02, 0.9, 2) infinite;
animation: tail 2s cubic-bezier(0, 0.02, 0.9, 2) infinite;
background-color: #9c7169;
border-radius: 11px;
height: 12px;
position: relative;
right: 2px;
transform: rotate(-5deg);
width: 12px;
}
.legs {
position: relative;
}
.legs:before {
background: linear-gradient(to left, #91655d 50%, #9c7169 50%);
bottom: 0;
content: '';
display: block;
height: 10px;
left: 7px;
position: absolute;
width: 30px;
z-index: 0;
}
.leg-left .anim-part:before,
.leg-left .anim-part:after {
content: '';
display: block;
position: absolute;
z-index: 1;
}
.leg-left:before,
.leg-left:after,
.leg-right:before,
.leg-right:after {
content: '';
display: block;
position: absolute;
z-index: 1;
}
.leg-left:after {
background-color: #674a4a;
height: 13px;
left: 48px;
top: 32px;
transform: skew(-8deg);
width: 20px;
z-index: 2;
}
.leg-left .anim-part {
animation: leg-left 0.4s ease-out infinite alternate-reverse;
position: relative;
top: 1px;
transform: rotate(5deg) translateX(3px);
transform-origin: right;
z-index: 2;
}
@keyframes leg-left {
0% {
transform: rotate(0deg) translateX(0px);
}
50% {
transform: rotate(5deg) translateX(3px);
}
}
.leg-left .anim-part:before {
height: 16px;
width: 16px;
border: 20px solid;
border-radius: 30px;
border-color: transparent #835f5b transparent transparent;
transform: rotate(-45deg);
top: -17px;
left: 17px;
}
.leg-left .anim-part .line {
background-color: #835f5b;
height: 25px;
position: absolute;
width: 20px;
left: 51px;
top: 7px;
z-index: 2;
transform: skew(-9deg);
}
.leg-left .anim-part:after {
background-color: #835f5b;
height: 20px;
left: 33px;
top: -20px;
width: 24px;
}
.leg-left:after {
background-color: #674a4a;
height: 13px;
left: 48px;
top: 32px;
transform: skew(-8deg);
width: 20px;
z-index: 2;
}
.leg-right {
position: relative;
right: 10px;
}
.leg-right:before {
height: 30px;
width: 38px;
border: 20px solid;
border-radius: 40px;
border-color: #91655d transparent transparent transparent;
transform: rotate(-15deg);
z-index: 3;
top: -29px;
left: 21px;
}
.leg-right .anim-part {
position: absolute;
left: 64px;
bottom: 9px;
transform: rotate(43deg);
z-index: 2;
}
.leg-right .anim-part .circle {
animation: leg-right 0.4s ease-out infinite alternate-reverse;
width: 20px;
height: 20px;
background-color: #91655d;
border-radius: 20px;
transform: translateX(4px) rotate(4deg);
}
@keyframes leg-right {
100% {
transform: translateX(4px) rotate(2deg);
}
}
.leg-right .anim-part .circle-last {
border-radius: 20px 0 0 20px;
}
.leg-right .anim-part .circle-last:before {
content: '';
display: block;
border-bottom: 20px solid #674a4a;
border-right: 2px solid transparent;
height: 0;
left: 15px;
width: 11px;
position: relative;
z-index: 1;
}
.presents {
top: 3px;
height: 45px;
margin: 0 auto;
position: relative;
width: 110px;
}
.presents:after {
animation: shadow 0.4s ease-out infinite alternate-reverse;
background-color: rgba(0, 0, 0, 0.07);
bottom: 0;
border-radius: 7px;
content: '';
display: block;
height: 7px;
left: -22px;
position: absolute;
width: 170px;
}
.present {
border-radius: 4px;
bottom: 3px;
position: absolute;
z-index: 1;
}
.present:before,
.present:after {
content: '';
display: block;
position: relative;
}
.present-one {
background-color: #fb5d5d;
height: 45px;
right: 32px;
width: 45px;
z-index: 3;
}
.present-one:before {
background-color: #fc7676;
height: 12px;
width: 47px;
border-radius: 4px 4px 2px 2px;
box-shadow: 0 2px 0 0 rgb(0 0 0 / 4%);
right: 1px;
}
.present-two {
background-color: #82dfe3;
height: 30px;
width: 30px;
}
.present-two:before {
background-color: #97e4e8;
height: 10px;
width: 32px;
}
.present:before {
border-radius: 4px 4px 2px 2px;
box-shadow: 0 2px 0 0 rgb(0 0 0 / 4%);
right: 1px;
}
.present-two:after {
background-color: #69b2cb;
bottom: 10px;
height: 100%;
left: 7px;
width: 5px;
}
.present-two-right {
right: 5px;
}
.present-two {
background-color: #82dfe3;
height: 30px;
width: 30px;
}
.present-three {
background-color: #ffb63c;
height: 25px;
left: 25px;
margin: auto;
width: 25px;
z-index: 3;
}
.present-three:before {
background-color: #ffc056;
height: 8px;
width: 27px;
}
.present:before {
border-radius: 4px 4px 2px 2px;
box-shadow: 0 2px 0 0 rgb(0 0 0 / 4%);
right: 1px;
}
.present:before,
.present:after {
content: '';
display: block;
position: relative;
}
.present-three:after {
background-color: #fb5353;
bottom: 8px;
height: 100%;
left: 13px;
width: 5px;
}
.present:before,
.present:after {
content: '';
display: block;
position: relative;
}
.present-three:after {
background-color: #fb5353;
bottom: 8px;
height: 100%;
left: 13px;
width: 5px;
}
.present:before,
.present:after {
content: '';
display: block;
position: relative;
}
</style>
<link
href="https://fonts.googleapis.com/css?family=Berkshire+Swash"
rel="stylesheet"
/>
</head>
<body>
<div class="santa-container">
<svg
data-name="Layer 1"
xmlns="http://www.w3.org/2000/svg"
width="350"
height="400"
>
<path fill="transparent" d="M0 0h350v400H0z" />
<g class="plane">
<rect
x="215.747"
y="157.738"
width="25.511"
height="43.645"
rx="12.755"
ry="12.755"
fill="#711723"
/>
<path
fill="#f40009"
d="M166.263 185.401h74.995v31.965h-74.995zM166.263 217.366h74.995a31.965 31.965 0 01-31.965 31.965h-43.03v-31.965z"
/>
<g class="hand">
<rect
x="136.437"
y="152.836"
width="26.365"
height="9.113"
rx="4.557"
ry="4.557"
transform="rotate(-120 149.62 157.393)"
fill="#f6bfb1"
/>
<path
fill="#f40009"
d="M144.906 163.746l11.978-6.916 20.407 35.346-11.978 6.916z"
/>
<rect
x="139.226"
y="154.214"
width="20.172"
height="6.973"
rx="3.486"
ry="3.486"
transform="rotate(-30 149.312 157.7)"
fill="#e6e6e6"
/>
</g>
<path fill="#f6bfb1" d="M171.488 155.28h37.805v23.974h-37.805z" />
<path
d="M165.956 185.093v64.545h-12.602v-.024c-.406.015-.818.024-1.23.024a32.272 32.272 0 110-64.545c.412 0 .824.01 1.23.025v-.025z"
fill="#711723"
/>
<path fill="#300403" d="M161.345 185.093h4.918v64.545h-4.918z" />
<path
d="M113.376 210.296v11.987h-2.34v-.004a6.053 6.053 0 01-.23.004 5.993 5.993 0 110-11.987c.077 0 .154.002.23.005v-.005z"
fill="#f40009"
/>
<g fill="#300403">
<circle cx="155.505" cy="244.106" r="2.459" />
<circle cx="155.505" cy="190.933" r="2.459" />
<circle cx="155.505" cy="208.452" r="2.459" />
<circle cx="155.505" cy="226.586" r="2.459" />
</g>
<rect
class="blade"
x="113.244"
y="167.266"
width="6.762"
height="98.354"
rx="3.381"
ry="3.381"
fill="#300403"
/>
<path
d="M195.154 211.526h34.732a4.918 4.918 0 014.917 4.918 4.918 4.918 0 01-4.917 4.917h-34.732a4.918 4.918 0 01-4.917-4.917 4.918 4.918 0 014.917-4.918z"
fill="#711723"
/>
<g fill="#fff">
<rect
x="174.148"
y="171.282"
width="15.925"
height="40.192"
rx="7.963"
ry="7.963"
/>
<rect
x="188.824"
y="171.282"
width="15.925"
height="40.192"
rx="7.963"
ry="7.963"
/>
<rect
x="180.862"
y="167.691"
width="15.925"
height="51.21"
rx="7.963"
ry="7.963"
transform="rotate(-90 188.824 193.296)"
/>
<path
d="M161.55 180.896a7.963 7.963 0 016.42-9.252l20.066-3.625a7.963 7.963 0 019.251 6.42 7.963 7.963 0 01-6.42 9.251l-20.066 3.626a7.963 7.963 0 01-9.251-6.42z"
/>
<path
d="M183.122 174.543a7.963 7.963 0 019.251-6.42l19.491 3.521a7.963 7.963 0 016.42 9.252 7.963 7.963 0 01-9.251 6.42l-19.491-3.522a7.963 7.963 0 01-6.42-9.25z"
/>
</g>
<rect
x="167.185"
y="151.899"
width="6.455"
height="27.355"
rx="3.227"
ry="3.227"
fill="#711723"
/>
<rect
x="207.449"
y="151.899"
width="6.455"
height="27.355"
rx="3.227"
ry="3.227"
fill="#711723"
/>
<circle cx="190.083" cy="165.883" r="3.842" fill="#e76160" />
<circle cx="190.083" cy="179.868" r="6.454" />
<path
fill="#f40009"
d="M167.185 148.21h46.718v7.069h-46.718zM213.903 145.137h-46.718a10.757 10.757 0 0110.757-10.758h25.204a10.757 10.757 0 0110.757 10.758z"
/>
<path fill="#711723" d="M167.185 143.907h46.718v4.303h-46.718z" />
<circle cx="181.016" cy="146.059" r="7.377" fill="#711723" />
<circle cx="181.016" cy="146.059" r="5.62" fill="#300403" />
<circle cx="200.072" cy="146.059" r="7.377" fill="#711723" />
<circle cx="200.072" cy="146.059" r="5.62" fill="#300403" />
<path
d="M176.713 165.422s2.459-3.995 6.454 0M197.306 165.422s2.459-3.995 6.454 0"
fill="none"
stroke="#000"
stroke-miterlimit="10"
stroke-width="1.844"
/>
</g>
</svg>
</div>
<div class="snowflakes">
<script>
for (var i = 0; i < 10; i++) {
document.write("<div class='snowflake'>❅</div>");
}
</script>
</div>
<ul class="lightrope">
<script>
for (var i = 0; i < window.screen.width / 50; i++) {
document.write('<li></li>');
}
</script>
</ul>
<h1>Merry Christmas!</h1>
<div class="tree-container">
<div class="tree">
<div class="star"></div>
<div class="cone tree-cone1"></div>
<div class="cone tree-cone2"></div>
<div class="cone tree-cone3"></div>
<div class="trunk"></div>
<div class="ornament or1">
<div class="shine"></div>
</div>
<div class="ornament or2">
<div class="shine"></div>
</div>
<div class="ornament or3">
<div class="shine"></div>
</div>
<div class="ornament or4">
<div class="shine"></div>
</div>
<div class="ornament or5">
<div class="shine"></div>
</div>
<div class="ornament or6">
<div class="shine"></div>
</div>
<div class="bells-container">
<div class="bell bell1">
<div class="bell-top"></div>
<div class="bell-bottom"></div>
<div class="bell-mid"></div>
</div>
<div class="bell bell2">
<div class="bell-top"></div>
<div class="bell-bottom"></div>
<div class="bell-mid"></div>
</div>
<div class="bow">
<div class="b1"></div>
<div class="b2"></div>
<div class="b3"></div>
</div>
</div>
</div>
<div class="gift"></div>
<div class="ribbon"></div>
<div class="gift2"></div>
<div class="ribbon2"></div>
<div class="shadow"></div>
</div>
<div class="deer-container">
<div class="artboard">
<div class="deer">
<div class="rocking">
<div class="head">
<div class="horns">
<div class="horn horn-left">
<div class="line line-one"></div>
<div class="line line-two"></div>
<div class="line line-three"></div>
</div>
<div class="horn horn-right">
<div class="line line-one"></div>
<div class="line line-two"></div>
<div class="line line-three"></div>
</div>
</div>
<div class="ears">
<div class="ear ear-left"></div>
<div class="ear ear-right"></div>
</div>
<div class="eyes">
<div class="eye eye-left"></div>
<div class="eye eye-right"></div>
</div>
<div class="nose"></div>
</div>
<div class="body">
<div class="shadow"></div>
<div class="hooves">
<div class="hoof-one">
<div class="line"></div>
<div class="anim-part">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle circle-last"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="hoof-two">
<div class="line-one"></div>
<div class="line-two"></div>
</div>
</div>
</div>
<div class="tail">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="legs">
<div class="leg-left">
<div class="anim-part">
<div class="line"></div>
</div>
</div>
<div class="leg-right">
<div class="anim-part">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle">
<div class="circle circle-last"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="presents">
<div class="present present-one"></div>
<div class="present present-two"></div>
<div class="present present-two present-two-right"></div>
<div class="present present-three"></div>
</div>
</div>
</div>
</body>
</html>