图中仅显示部分内容,可根据自己需求进行内容修改,效果图如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
@import url("https://cdn.bootcss.com/font-awesome/4.6.0/css/font-awesome.min.css");
.bg-wrapper {
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
position: relative;
/* background-color: #D46466; */
}
.main-title {
font-size: 2rem;
position: absolute;
z-index: 9;
margin-top: 240px;
color: gold;
padding: 5px;
background: #C51803;
border-radius: 10px;
cursor: pointer;
}
.qian {
position: absolute;
margin: -160px 0 0 38px;
font-size: 3.2rem;
color: #E8D5F1;
}
.main-title:hover .qian {
opacity: 0;
transition-delay: 1s;
}
.bg-wrapper .envelope-wrapper {
background: #B4D2EE;
}
.bg-wrapper .envelope-wrapper .envelope {
position: relative;
width: 40rem;
height: 30rem;
}
.bg-wrapper .envelope-wrapper .envelope:before {
content: "";
position: absolute;
top: 0px;
z-index: 2;
border-top: 15.2rem solid #D3EAFD;
border-right: 20rem solid transparent;
border-left: 20rem solid transparent;
transform-origin: top;
transition: all 0.5s ease-in-out 0.7s;
}
.bg-wrapper .envelope-wrapper .envelope:after {
content: "";
position: absolute;
z-index: 2;
width: 0px;
height: 0px;
border-top: 15rem solid transparent;
border-right: 20rem solid #B4D2EE;
border-bottom: 15rem solid #B4D2EE;
border-left: 20rem solid #B4D2EE;
}
.bg-wrapper .envelope-wrapper .envelope .card {
position: absolute;
right: 20%;
bottom: 0;
width: 60%;
height: 60%;
background: #FFF;
text-align: center;
transition: all 1s ease-in-out;
box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
background-color: #E8D5F1;
}
.bg-wrapper .envelope-wrapper .envelope .card .enter {
position: absolute;
right: 10px;
top: 10px;
font-size: 2rem;
color: rgba(68, 68, 68, 0.7);
cursor: pointer;
}
.bg-wrapper .envelope-wrapper .envelope .card .text {
position: absolute;
top: 50%;
left: 50%;
font-size: 2rem;
font-family: "Great Vibes", cursive;
color: #C51803;
transform: translate(-50%, -50%);
}
.bg-wrapper .envelope-wrapper .heart {
position: absolute;
top: 50%;
left: 50%;
width: 4rem;
height: 4rem;
background: #C51803;
z-index: 4;
transform: translate(-50%, -80%) rotate(45deg);
transition: transform 0.5s ease-in-out 1s;
box-shadow: 0 1px 6px rgba(0, 0, 0, 0.6);
cursor: pointer;
}
.bg-wrapper .envelope-wrapper .heart:before,
.bg-wrapper .envelope-wrapper .heart:after {
content: "";
position: absolute;
width: 4rem;
height: 4rem;
background-color: #C51803;
border-radius: 50%;
}
.bg-wrapper .envelope-wrapper .heart:before {
top: -2rem;
}
.bg-wrapper .envelope-wrapper .heart:after {
right: 2rem;
}
.bg-wrapper .flap .envelope:before {
transform: rotateX(180deg);
z-index: 0;
}
.bg-wrapper .flap .envelope .card {
bottom: 300px;
transform: scale(1.5);
transition-delay: 1s;
}
.bg-wrapper .flap .heart {
transform: rotate(-50deg);
transform: scale(0.4);
margin-top: -230px;
margin-left: -25px;
transition: 5.20s;
transition-delay: 0.1s;
}
///////////////////////////////////////////////
.hearts {
position: absolute;
left: 0;
right: 0;
z-index: 2;
}
.heart1 {
position: absolute;
bottom: 80px;
right: 10%;
}
.heart1:before,
.heart1:after {
position: absolute;
content: "";
left: 50px;
top: 0;
width: 50px;
height: 80px;
background: #D00000;
border-radius: 50px 50px 0 0;
transform: rotate(-45deg);
transform-origin: 0 100%;
}
.heart1:after {
left: 0;
transform: rotate(45deg);
transform-origin: 100% 100%;
}
.close .heart1 {
opacity: 0;
animation: none;
}
.a1 {
left: 20%;
transform: scale(0.6);
opacity: 1;
-webkit-animation: slideUp 4s linear 1, sideSway 2s ease-in-out 4 alternate;
animation-fill-mode: forwards;
animation-delay: .7s;
}
.a2 {
left: 55%;
transform: scale(1);
opacity: 1;
-webkit-animation: slideUp 5s linear 1, sideSway 4s ease-in-out 2 alternate;
animation-fill-mode: forwards;
animation-delay: .7s;
}
.a3 {
left: 10%;
transform: scale(0.8);
opacity: 1;
-webkit-animation: slideUp 7s linear 1, sideSway 2s ease-in-out 6 alternate;
animation-fill-mode: forwards;
animation-delay: .7s;
}
@keyframes slideUp {
0% {
top: 0;
}
100% {
top: -180px;
}
}
@keyframes sideSway {
0% {
margin-left: 0px;
}
100% {
margin-left: 50px;
}
}
</style>
</head>
<body>
<div class="bg-wrapper">
<div class="main-title item"><span class="qian">¥</span>
<div class=" close-icon">哈哈哈哈</div>
</div>
<div class="envelope-wrapper">
<div class="envelope">
<div class="card">
<span class="fa fa-close enter"></span>
<div class="text">
<div class=line1>哈哈哈哈</div>
<div class=line2>哈 哈</div>
<div class=line3>哈哈</div>
</div>
<div class="hearts ">
<div class="heart1 a1"></div>
<div class="heart1 a2"></div>
<div class="heart1 a3"></div>
</div>
</div>
</div>
<div class="heart"></div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<script type="text/javascript">
$(document).ready(() => {
$(".envelope-wrapper .heart").click(() => {
$('.envelope-wrapper').addClass('flap')
});
$(".main-title .close-icon").click(() => {
$('.envelope-wrapper').removeClass('flap')
});
});
</script>
</body>
</html>
如需要其他有创意的小作品可以私聊