目录

如何操作 - 3D 翻盖盒


了解如何使用 CSS 创建翻转框。


翻盖盒

将鼠标移到下面的方框上即可查看效果:

水平的翻动:

前面

背面

亲自试一试 »

垂直的翻动:

前面

背面

 

亲自试一试 »


如何创建翻盖盒

步骤1)添加HTML:

示例

<div class="flip-box">
  <div class="flip-box-inner">
    <div class="flip-box-front">
      <h2>Front Side</h2>
    </div>
    <div class="flip-box-back">
      <h2>Back Side</h2>
    </div>
  </div>
</div>


步骤2)添加CSS:

示例

/* The flip box container - set the width and height to whatever you want. We have added the border property to demonstrate that the flip itself goes out of the box on hover (remove perspective if you don't want the 3D effect */
.flip-box {
  background-color: transparent;
  width: 300px;
  height: 200px;
  border: 1px solid #f1f1f1;
  perspective: 1000px; /* Remove this if you don't want the 3D effect */
}

/* This container is needed to position the front and back side */
.flip-box-inner {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 0.8s;
  transform-style: preserve-3d;
}

/* Do an horizontal flip when you move the mouse over the flip box container */
.flip-box:hover .flip-box-inner {
  transform: rotateY(180deg);
}

/* Position the front and back side */
.flip-box-front, .flip-box-back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden; /* Safari */
  backface-visibility: hidden;
}

/* Style the front side */
.flip-box-front {
  background-color: #bbb;
  color: black;
}

/* Style the back side */
.flip-box-back {
  background-color: dodgerblue;
  color: white;
  transform: rotateY(180deg);
}
亲自试一试 »

垂直翻转

要进行垂直翻转而不是水平翻转,请使用rotateX方法而不是rotateY

示例

.flip-box:hover .flip-box-inner {
  transform: rotateX(180deg);
}

.flip-box-back {
  transform: rotateX(180deg);
}
亲自试一试 »

笔记:这些示例在平板电脑和/或手机上无法正常工作。

提示:去我们的CSS 2D 变换教程,了解有关 2D 变换的更多信息,例如rotate() 方法。

提示:去我们的CSS 3D 变换教程,了解有关 3D 变换的更多信息。