前端小特效

3D旋转效果越来越受到企业的重视,在html5里实现3D旋转效果比用动态图片实现3D效果要好得多,毕竟几十行代码总比一张图片要小得多。这里用一个最基本的3D正方体旋转效果给那些不了解HTML53D效果的程序员做个入门。图片大小是100*100。只是一个小技巧,希望对您有所帮助。不要把3D想得太难。3D其实就是把浏览器当做3维空间,并给你先要做的每一个面分别沿x轴,y轴,z轴方向做适当的旋转和位移就行了。

3D.html代码

<body>
    <div id="wrap">
<div id="box">
   <div><img src="images/1.jpg"/></div>
   <div><img src="images/2.jpg"/></div>
   <div><img src="images/3.jpg"/></div>
   <div><img src="images/4.jpg"/></div>
   <div><img src="images/5.jpg"/></div>
   <div><img src="images/6.jpg"/></div>
</div>
    </div>
</body>

把六张图片放在六个面,接下来用css将6个面做成正方体代码如下

#wrap{width:100px;height:100px;
        border:10px dotted #000;padding:100px;
perspective:800px;perspective-origin:center center;
margin:30px auto;}


#box{
    width:100px;height:100px;
     position:relative;
    transform-style:preserve-3d;
    animation:play 30s infinite;
    transform-origin:center center -50px;}


#box div{
    width:100px;height:100px;
    text-align:center;
    line-height:100px;
    position:absolute;
    color:#fff;
    z-index:1;
    font-size:30px;
    backface-visibility:hidden;
    }


#box div:nth-of-type(1)
{
    left:0px;
    top:-100px;
    background:yellow;
    transform-origin:bottom;
    transform:rotateX(90deg);
}
#box div:nth-of-type(2)
{
    right:100px;
    top:0px;
    background:blue;
    transform-origin:right;
    transform:rotateY(-90deg);
}
#box div:nth-of-type(3)
{
    left:0px;
    top:0px;
    background:red;
    z-index:2;
}
#box div:nth-of-type(4)
{
    left:100px;
    top:0px;
    background:green;
    transform-origin:left;
    transform:rotateY(90deg);
}
#box div:nth-of-type(5)
{
    left:0px;
    top:100px;
    background:purple;
    transform-origin:top;
    transform:rotateX(-90deg);
}
#box div:nth-of-type(6)
{
    left:0px;
    top:0px;
    background:pink;
    transform:translateZ(-100px) rotateY(180deg);
}

构建玩正方体后,用以下属性可以在谷歌浏览器(有些浏览器不兼容)实现旋转效果

@keyframes play{
from{transform:rotateZ(0deg) rotateY(0deg);}
to{transform:rotateZ(360deg) rotateY(360deg);}
}


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值