css过渡、动画3D环绕相册

以下是八面环绕相册

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>Document</title>
    <link rel="stylesheet" href="css/style.css" />
  </head>
  <body>
    <ul>
      <li></li>
      <li></li>
      <li></li>
      <li></li>
      <li></li>
      <li></li>
      <li></li>
      <li></li>
    </ul>
  </body>
</html>

 


* {
  padding: 0;
  margin: 0;
}
body {
  perspective: 800px;
}
ul {
  list-style: none;
  position: relative;
  margin: 150px auto;
  width: 200px;
  transform-style: preserve-3d;
  transform: rotateY(30deg) rotateX(-20deg);
  animation: boxRotate 5s linear infinite ;
}
@keyframes boxRotate {
  0% {
    transform: perspective(800px) rotateY(30deg) rotateX(-20deg) rotateY(0deg);
  }
  100% {
    transform: perspective(800px) rotateY(30deg) rotateX(-20deg) rotateY(360deg);
  }
}
ul li {
  width: 150px;
  height: 150px;
  position: absolute;
  text-align: center;
  line-height: 200px;
  font-size: 40px;
  border: 1px solid black;
  background-size: 150px 150px;
}
ul :first-child {
  transform: translateZ(200px);
  background-image: url(../img/baby.png);
}
ul :nth-child(2) {
  transform: rotateY(45deg) translateZ(200px);
  background-image: url(../img/chenhe.png);
}
ul :nth-child(3) {
  transform: rotateY(90deg) translateZ(200px);
  background-image: url(../img/dilireba.png);
}
ul :nth-child(4) {
  transform: rotateY(135deg) translateZ(200px);
  background-image: url(../img/u1.jpg);
}
ul :nth-child(5) {
  transform: rotateY(180deg) translateZ(200px);
  background-image: url(../img/u2.jpg);
}
ul :nth-child(6) {
  transform: rotateY(225deg) translateZ(200px);
  background-image: url(../img/u3.jpg);
}
ul :nth-child(7) {
  transform: rotateY(270deg) translateZ(200px);
  background-image: url(../img/u4.jpg);
}
ul :last-child {
  transform: rotateY(-45deg) translateZ(200px);
  background-image: url(../img/u6.jpg);
}

立体相册中间嵌套小立体相册并整体旋转

<body>
    <div class="bigbox">
        <div class="smbox mright">right</div>
        <div class="smbox mleft">left</div>
        <div class="smbox mtop">top</div>
        <div class="smbox mbottom">bottom</div>
        <div class="smbox mfont">font</div>
        <div class="smbox mback">back</div>


        <div class="right">right</div>
        <div class="left">left</div>
        <div class="top">top</div>
        <div class="bottom">bottom</div>
        <div class="font">font</div>
        <div class="back">back</div>
    </div>
</body>
/* 立体相册样式 */
.bigbox {
    width: 300px;
    height: 300px;
    margin: 150px auto;
    /* background-color: gray; */
    position: relative;
    
    /* opacity: 0.8; */
    /* 让子元素具有3d效果 */
    transform-style:preserve-3d;
    /* 景深透视 */
    transform:perspective(800px) rotateX(45deg) rotateY(30deg);
    animation: boxRotate 5s linear infinite ;
    
}
.smbox{
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
@keyframes boxRotate{
    0%{
        transform:perspective(800px) rotateX(0deg) rotateY(0deg);
    }
    100%{
        transform:perspective(800px) rotateX(360deg) rotateY(360deg);
    }
}


.bigbox div {
    
    background-color: lightcoral;
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.8;
    background-size: 100% 100%;
    box-shadow: 0 0 10px skyblue;
}
.right{
    width: 300px;
    height: 300px;
    transform: translateX(150px) rotateY(90deg);
    background-image: url(img/xu1.jpg);
}
.mright{
    width: 100px;
    height: 100px;
    transform: translateX(50px) rotateY(90deg);
    background-image: url(img/xu1.jpg);
}
.bigbox:hover .right{
    transform: translateX(150px) rotateY(90deg) translateZ(100px);

}

.left{
    width: 300px;
    height: 300px;
    transform: translateX(-150px) rotateY(-90deg);
    background-image: url(img/xu2.jpg);
}
.mleft{
    width: 100px;
    height: 100px;
    transform: translateX(-50px) rotateY(-90deg);
    background-image: url(img/xu2.jpg);
}
.bigbox:hover .left{
    transform: translateX(-150px) rotateY(-90deg) translateZ(100px);

}

.font{
    width: 300px;
    height: 300px;
    transform: translateZ(150px);
    background-image: url(img/xu3.jpg);
}
.mfont{
    width: 100px;
    height: 100px;
    transform: translateZ(50px);
    background-image: url(img/xu3.jpg);
}
.bigbox:hover .font{
    transform: translateZ(150px) translateZ(100px);

}

.back{
    width: 300px;
    height: 300px;
    transform: translateZ(-150px);
    background-image: url(img/xu4.jpg);
}
.mback{
    width: 100px;
    height: 100px;
    transform: translateZ(-50px);
    background-image: url(img/xu4.jpg);
}
.bigbox:hover .back{
    transform: translateZ(-150px) translateZ(-100px);

}

.top{
    width: 300px;
    height: 300px;
    transform: translateY(-150px) rotateX(90deg);
    background-image: url(img/xu5.jpg);
}
.mtop{
    width: 100px;
    height: 100px;
    transform: translateY(-50px) rotateX(90deg);
    background-image: url(img/xu5.jpg);
}
.bigbox:hover .top{
    transform: translateY(-150px) rotateX(90deg) translateZ(100px);

}

.bottom{
    width: 300px;
    height: 300px;
    transform: translateY(150px) rotateX(-90deg);
    background-image: url(img/xu6.jpg);
}
.mbottom{
    width: 100px;
    height: 100px;
    transform: translateY(50px) rotateX(-90deg);
    background-image: url(img/xu6.jpg);
}
.bigbox:hover .bottom{
    transform: translateY(150px) rotateX(-90deg) translateZ(100px);
}

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值