网站首页 > 基础教程 正文
前文
css是前端开发样式的基础,除了2d效果还可以做出很多酷炫的3d效果,本文就带大家体验简单的3d效果
1、基本布局
想象一下正方体纸盒被拆开
基本布局的代码
2、实现
正方体应该都会折吧,按边线折90°
注意:上下面不是折叠而是平移;并且默认旋转的中心是在正方形的中间轴(多摸索就明白了),所以要用transform-origins属性调一下
折完后是这样子的,貌似这不是正方体啊,其实他已经是了,只是视觉上离我们太近挡住了后面所以我们看不出。
所以引出了这个属性perspective:属性,他定义视图(也就是本文的立方体)离我们眼睛的距离,800-1000px是3d效果比较好的
是不是有立方体的感觉了,我们让他旋转一下就很明显了
3、完整style代码
<style>
*{
margin: 0;
padding: 0;
}
body{
perspective: 830px;//定义视图离我们的距离
}
.box{
width: 200px;
height: 200px;
margin: 200px auto;
position: relative;
transform-style:preserve-3d;
transition:all 2s; //过度效果
animation: rotate 5s infinite linear; //执行旋转动画
}
.box div{
width: 200px;
height: 200px;
border: 2px solid #ccc;
position: absolute;
}
.box div:nth-child(1)
{
top: -202px;
transform-origin: bottom;
transform: rotateX(90deg);
}
.box div:nth-child(2)
{
top: 202px;
transform-origin: top;
transform: rotateX(-90deg);
}
.box div:nth-child(3)
{
left: -202px;
transform-origin: right;
transform: rotateY(-90deg);
}
.box div:nth-child(4)
{
left: 202px;
transform-origin: left;
transform: rotateY(90deg);
}
.box div:nth-child(5)
{
}
.box div:nth-child(6)
{
transform: translateZ(-202px);
}
@keyframes rotate{ //定义旋转动画
0%{
}
100%{
transform:rotateX(360deg);
}
}
</style>
4、总结
这是最简单的3d效果了,原理要弄懂了,剩下的只要你脑洞大,你可以做出很多神奇的东西!
猜你喜欢
- 2024-10-10 让交互更加生动!有意思的鼠标跟随 3D 旋转动效
- 2024-10-10 「抖音最火」的3D旋转透视酷炫相册,如何用CSS3去实现
- 2024-10-10 纯CSS3实现旋转流星旋转光环效果 css旋转动画效果
- 2024-10-10 CSS3旋转实例学习(附3D旋转实例) css3实现360度旋转
- 2024-10-10 CSS3之日记翻页效果详解 日记翻页视频的模板
- 2024-10-10 如何使用纯CSS技术实现3D书本动态展示效果?
- 2024-10-10 CSS3之3D魔方鼠标控制酷炫效果 3d魔方代码
- 2024-10-10 CSS3专题(五)—实力宠粉,来了,来了,你们要的3D幻灯片来了
- 2024-10-10 26.HTML 2D和3D变换 html2d旋转
- 2024-10-10 CSS 还原拉斯维加斯球数字动画 拉斯维加斯扩展
- 最近发表
- 标签列表
-
- jsp (69)
- pythonlist (60)
- gitpush (78)
- gitreset (66)
- python字典 (67)
- dockercp (63)
- gitclone命令 (63)
- dockersave (62)
- linux命令大全 (65)
- mysql教程 (60)
- pythonif (86)
- location.href (69)
- deletesql (62)
- c++模板 (62)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- console.table (62)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)