如何做 - 3D 翻轉框
瞭解如何使用 CSS 建立翻轉框。
翻轉框
將滑鼠移到下面的框上以檢視效果
如何建立翻轉框
步驟 1) 新增 HTML
示例
<div class="flip-box">
<div class="flip-box-inner">
<div class="flip-box-front">
<h2>正面</h2>
</div>
<div class="flip-box-back">
<h2>反面</h2>
</div>
</div>
</div>
步驟 2) 新增 CSS
示例
/* 翻轉框容器 - 設定您想要的寬度和高度。我們添加了邊框屬性以演示翻轉本身在懸停時會超出盒子(如果不想要 3D 效果,請刪除 perspective) */
.flip-box {
background-color: transparent;
width: 300px;
height: 200px;
border: 1px solid #f1f1f1;
perspective: 1000px; /* 如果您不想要 3D 效果,請刪除此項 */
}
/* 此容器對於定位正面和反面是必需的 */
.flip-box-inner {
position: relative;
width: 100%;
height: 100%;
text-align: center;
transition: transform 0.8s;
transform-style: preserve-3d;
}
/* 當您將滑鼠移到翻轉框容器上時執行水平翻轉 */
.flip-box:hover .flip-box-inner {
transform: rotateY(180deg);
}
/* 定位正面和反面 */
.flip-box-front, .flip-box-back {
position: absolute;
width: 100%;
height: 100%;
-webkit-backface-visibility: hidden; /* Safari */
backface-visibility: hidden;
}
/* 樣式正面 */
.flip-box-front {
background-color: #bbb;
color: black;
}
/* 樣式反面 */
.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 變換的資訊。