CSS旋轉(zhuǎn)再翻轉(zhuǎn)是一種常用的網(wǎng)頁動畫效果,可以通過CSS3的transform屬性來實現(xiàn),下面是一個簡單的示例代碼,可以幫助你快速入門這個技巧:
HTML結(jié)構(gòu):
<div class="container"> <div class="rotate-flip-box"> <div class="content"> 內(nèi)容在這里 </div> </div> </div>
CSS樣式:
.container { perspective: 1000px; /* 透視效果,可以讓翻轉(zhuǎn)動畫更加自然 */ } .rotate-flip-box { width: 200px; height: 200px; position: relative; transform-style: preserve-3d; /* 保持3D變換效果 */ transition: transform 1s; /* 變換過渡時間 */ } .content { position: absolute; top: 0; left: 0; width: 100%; height: 100%; line-height: 200px; /* 垂直居中文本 */ text-align: center; /* 水平居中文本 */ color: #fff; /* 文本顏色 */ background-color: #000; /* 背景顏色 */ }
JavaScript代碼:
var rotateFlipBox = document.querySelector('.rotate-flip-box'); var content = document.querySelector('.content'); var angle = 0; var isFlipping = false; var flipInterval = null; var flipDuration = 1000; // 翻轉(zhuǎn)動畫持續(xù)時間,單位ms var flipEasing = 'ease'; // 翻轉(zhuǎn)動畫緩動函數(shù),可選值:linear, ease, ease-in, ease-out, ease-in-out var flipDirection = 'left'; // 翻轉(zhuǎn)方向,可選值:left, right, top, bottom var flipAxis = 'Y'; // 翻轉(zhuǎn)軸,可選值:X, Y, Z var flipOrigin = 'top'; // 翻轉(zhuǎn)原點,可選值:top, middle, bottom, left, right, center var flipTransformStyle = 'preserve-3d'; // 變換樣式,可選值:preserve-3d, flat var flipTransition = 'transform ' + flipDuration + 'ms ' + flipEasing; // 變換過渡時間,可選值:duration ms easing function (如:'transform 1s ease') var flipBoxWidth = content.offsetWidth; // 翻轉(zhuǎn)盒子的寬度,單位px,用于計算翻轉(zhuǎn)角度和位置偏移量 var flipBoxHeight = content.offsetHeight; // 翻轉(zhuǎn)盒子的高度,單位px,用于計算翻轉(zhuǎn)角度和位置偏移量 var flipAngle = (flipDirection == 'left' || flipDirection == 'right') ? 180 : 90; // 翻轉(zhuǎn)角度,單位度,用于計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)后的位置偏移量(如果方向是左右則180度,上下則90度)"; // 計算翻轉(zhuǎn)
版權(quán)聲明:除非特別標(biāo)注,否則均為本站原創(chuàng)文章,轉(zhuǎn)載時請以鏈接形式注明文章出處。