…">
当前位置:首页 > CSS

css制作信封

2026-01-28 08:07:27CSS

使用CSS制作信封效果

通过CSS的边框、阴影和伪元素可以模拟一个信封的展开效果。以下是一个简单的实现方法:

css制作信封

<div class="envelope"></div>
.envelope {
  width: 200px;
  height: 120px;
  background-color: #f9f3e9;
  position: relative;
  border: 1px solid #d4c9b8;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
}

.envelope::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  border-bottom: 60px solid #e8d5b5;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  transform-origin: top;
  transform: rotateX(0deg);
  transition: transform 0.5s;
}

.envelope:hover::before {
  transform: rotateX(180deg);
}

信封展开动画

添加悬停动画使信封看起来像被打开:

css制作信封

.envelope {
  perspective: 1000px;
}

.envelope::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 20px;
  background-color: #d4c9b8;
  border-radius: 0 0 5px 5px;
}

添加信纸效果

在信封内创建信纸层:

<div class="envelope">
  <div class="letter"></div>
</div>
.letter {
  position: absolute;
  bottom: 10px;
  left: 10px;
  right: 10px;
  height: 100px;
  background-color: white;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  transition: all 0.3s;
}

.envelope:hover .letter {
  transform: translateY(-40px);
  height: 140px;
}

完整信封样式

结合所有元素创建更真实的效果:

.envelope {
  width: 220px;
  height: 150px;
  background: #f5e7d0;
  border-radius: 5px;
  position: relative;
  box-shadow: 0 3px 10px rgba(0,0,0,0.2);
  margin: 50px auto;
  cursor: pointer;
}

.envelope::before {
  content: '';
  position: absolute;
  top: 0;
  width: 0;
  height: 0;
  border-left: 110px solid transparent;
  border-right: 110px solid transparent;
  border-top: 75px solid #e8cfa6;
  transform-origin: top;
  z-index: 2;
  transition: all 0.3s ease-in-out;
  transform: rotateX(0deg);
}

.envelope:hover::before {
  transform: rotateX(180deg);
}

.letter {
  position: absolute;
  bottom: 10px;
  left: 20px;
  right: 20px;
  height: 120px;
  background: white;
  transition: all 0.3s ease-in-out;
  box-shadow: 0 0 5px rgba(0,0,0,0.1);
  padding: 10px;
  box-sizing: border-box;
}

.envelope:hover .letter {
  transform: translateY(-50px);
  height: 170px;
}

这些CSS技巧可以组合使用来创建各种信封效果,通过调整颜色、尺寸和动画参数可获得不同的视觉效果。

标签: 信封css
分享给朋友:

相关文章

css制作图标

css制作图标

使用CSS制作图标的方法 使用伪元素和边框 通过CSS的::before和::after伪元素结合border属性可以创建简单的几何形状图标。例如制作一个三角形: .triangle { w…

网页制作教程css

网页制作教程css

CSS 基础概念 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。通过将样式与 HTML 结构分离,提升代码可维护性。 CSS 引入方式 内联样式:直接在 HTML 标签中使…

css图形制作

css图形制作

CSS 图形制作方法 使用 CSS 可以创建各种基本和复杂的图形,主要通过 border、transform、clip-path 等属性实现。以下是几种常见图形的实现方式: 三角形 通过设置元素的…

网页制作css是什么

网页制作css是什么

CSS的定义与作用 CSS(Cascading Style Sheets,层叠样式表)是一种用于描述网页外观和格式的样式语言。它通过定义HTML元素的布局、颜色、字体等视觉属性,实现内容与表现的分离,…

css 边框制作

css 边框制作

基础边框设置 使用 border 属性可快速设置边框样式、宽度和颜色: .element { border: 1px solid #000; /* 宽度 | 样式 | 颜色 */ } 样式选…

css制作三角形

css制作三角形

使用边框制作三角形 通过设置元素的宽度和高度为0,并利用边框属性,可以创建不同方向的三角形。例如,要创建一个向下的三角形: .triangle-down { width: 0; height…