作为一个刚入到的小白 感觉到IT行业的压力 不过我们也可以在闲暇的时间去写一些小的案例去减压 下面是本人写的一个效果
代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style type="text/css">
*{
margin: 0;
padding: 0;
}
html,body{
height: 100%;
background: #000;
perspective: 1200px;
}
#heart{
width: 80px;
height: 120px;
animation: first 9s infinite;
position: absolute;
left: 0;
top: 0;
bottom: 0;
right: 0;
margin: auto;
transform-style: preserve-3d;
}
@keyframes first{
from{transform: rotateZ(0deg) rotateX(0deg);}
to{transform: rotateZ(360deg) rotateX(360deg);}
}
ul{
width: 50px;
height: 50px;
position: absolute;
left: 0;
top: 0;
bottom: 0;
right: 0;
margin: auto;
transform-style: preserve-3d;
}
li{
width: 50px;
height: 50px;
list-style: none;
background: #fff;
opacity: 1;
position: absolute;
top: 0;
}
ul>li:nth-child(1){
transform: rotateY(90deg) translateZ(25px);
}
ul>li:nth-child(2){
transform: rotateY(90deg) translateZ(-25px);
}
ul>li:nth-child(3){
transform: rotateX(90deg) translateZ(25px);
}
ul>li:nth-child(4){
transform: rotateX(90deg) translateZ(-25px);
}
ul>li:nth-child(5){
transform: translateZ(25px);
}
ul>li:nth-child(6){
transform: translateZ(-25px);
}
img{
width: 50px;
height: 50px;
display: block;
border: none;
}
#heart>div{
position: absolute;
top: 0;
width: 80px;
height: 120px;
border: 1px solid red;
border-left: 0;
border-bottom: 0;
border-radius: 61px 52px 64px 43px/65px 39px 0px 0px;
/*transform: rotateZ(45deg);*/
}
</style>
</head>
<body>
<div id="heart">
<ul>
<li></li> // 可以自行加图片
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
<script type="text/javascript">
var oHeart = document.getElementById("heart");
for(var i = 0;i < 36;i++){
var oDiv = document.createElement("div");//创建div
oHeart.appendChild(oDiv);//在heart中添加div
oDiv.style.transform = "rotateY("+i*10+"deg) rotateZ(45deg) translateX(23px)";
}
</script>
</body>
</html>
图片:本身是一个动图 只是截取的
因本人第一次发帖 有问题或者更好的办法请大牛赐教