css信封制作
使用CSS制作信封效果
通过CSS的伪元素、边框和阴影可以模拟一个信封的展开效果。以下是一个简洁的实现方法:
HTML结构

<div class="envelope">
<div class="envelope-body">
<!-- 信封内容 -->
</div>
</div>
CSS样式
.envelope {
position: relative;
width: 300px;
height: 200px;
background: #f5f5f5;
border: 1px solid #ddd;
box-shadow: 0 4px 8px rgba(0,0,0,0.1);
overflow: hidden;
}
.envelope:before {
content: '';
position: absolute;
top: 0;
left: 0;
border-left: 150px solid transparent;
border-right: 150px solid transparent;
border-top: 100px solid #e74c3c;
transform-origin: top;
transform: rotateX(180deg);
transition: transform 0.3s ease;
}
.envelope:hover:before {
transform: rotateX(0deg);
}
.envelope-body {
padding: 20px;
position: relative;
z-index: 1;
}
动态展开效果
要实现信封的动态展开,可以结合CSS动画:

@keyframes openEnvelope {
0% { transform: rotateX(180deg); }
100% { transform: rotateX(0deg); }
}
.envelope-animated:before {
animation: openEnvelope 0.5s forwards;
}
3D立体信封
使用CSS 3D变换增强立体感:
.envelope-3d {
transform-style: preserve-3d;
perspective: 1000px;
}
.envelope-3d:before {
transform: rotateX(180deg) translateZ(50px);
}
响应式调整
通过媒体查询适应不同屏幕尺寸:
@media (max-width: 600px) {
.envelope {
width: 200px;
height: 150px;
}
.envelope:before {
border-left: 100px solid transparent;
border-right: 100px solid transparent;
border-top: 75px solid #e74c3c;
}
}
这些方法可以灵活组合,根据实际需求调整颜色、尺寸和动画效果。信封的三角盖部分使用伪元素和边框技巧创建,hover或动画状态时通过变换实现开合效果。






