CSS实现3D窗口缩小是一种非常酷炫的效果,它通过CSS 3D变换来实现。首先我们需要创建一个div容器作为我们的窗口,在这个窗口中添加需要显示的内容。
<div class="window"> <h1>窗口标题</h1> <p>这是窗口内容</p> </div>
接下来,我们使用CSS 3D变换来实现缩小效果。我们需要使用transform-style属性来指定3D变换,使用perspective属性设置透视距离,使用transform属性来缩小窗口。
.window { width: 400px; height: 300px; position: relative; transform-style: preserve-3d; transition: transform .5s; } .window:hover { transform: scale(0.5) translateZ(-200px); } .window:before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0.5); z-index: 1; opacity: 0; transition: opacity .5s; } .window:hover:before { opacity: 1; }
在上面的代码中,我们使用:hover伪类来在鼠标悬停时应用缩小效果。使用transform: scale(0.5)将窗口缩小到原来的一半大小,使用translateZ(-200px)将窗口移动到一个更靠前的位置。同时我们还使用了:before伪元素来创建一个半透明的遮罩层,以增强视觉效果。