เอฟเฟกต์ Bounce Out Left
เอฟเฟกต์นี้ทำให้องค์ประกอบเด้งออกไปทางซ้ายพร้อมจางหาย คล้ายกับการโดนเตะออกทางซ้าย ใช้เหมาะกับการ dismiss element หรือ transition ระหว่างหน้า
โค้ดตัวอย่างสมบูรณ์
<html>
<head>
<style>
.animated {
background-image: url(/css/images/logo.png);
background-repeat: no-repeat;
background-position: left top;
padding-top: 95px;
margin-bottom: 60px;
-webkit-animation-duration: 10s;
animation-duration: 10s;
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
}
@-webkit-keyframes bounceOutLeft {
0% { -webkit-transform: translateX(0); }
20% { opacity: 1; -webkit-transform: translateX(20px); }
100% { opacity: 0; -webkit-transform: translateX(-2000px); }
}
@keyframes bounceOutLeft {
0% { transform: translateX(0); }
20% { opacity: 1; transform: translateX(20px); }
100% { opacity: 0; transform: translateX(-2000px); }
}
.bounceOutLeft {
-webkit-animation-name: bounceOutLeft;
animation-name: bounceOutLeft;
}
</style>
</head>
<body>
<div id="animated-example" class="animated bounceOutLeft"></div>
<button onclick="myFunction()">Reload page</button>
<script>
function myFunction() { location.reload(); }
</script>
</body>
</html>
การวิเคราะห์ Keyframes
| ขั้นตอน | Transform | Opacity | ผลลัพธ์ |
|---|---|---|---|
| 0% | translateX(0) | 1 | เริ่มต้นตำแหน่งเดิม |
| 20% | translateX(20px) | 1 | เด้งเล็กน้อยไปทางขวา (เตรียมแรง) |
| 100% | translateX(-2000px) | 0 | บินออกทางซ้ายจนหายไป |
เคล็ดลับการปรับแต่ง
- ปรับ
animation-durationให้เร็วขึ้น (0.5-1s) สำหรับ UI จริง - ลดระยะ
translateX(-2000px)ให้เหมาะกับขนาดหน้าจอ - เพิ่ม
animation-timing-function: ease-inเพื่อความเรียบเนียน