🇯🇵 日本語 | 🇺🇸 English | 🇪🇸 Español | 🇵🇹 Português | 🇹🇭 ไทย | 🇨🇳 中文

เอฟเฟกต์ปุ่ม CSS: ขยายเล็กน้อยเมื่อโฮเวอร์ด้วย scale()

📝 การใช้งาน

เทมเพลตนี้ใช้เมื่อคุณต้องการให้ปุ่มขยายเล็กน้อยเมื่อวางเมาส์บนมัน

📘 คำอธิบาย

โค้ดนี้ใช้ transform: scale() เพื่อให้ปุ่มขยายเล็กน้อยเมื่อวางเมาส์บนมัน โดยใช้ transition เพื่อให้การเปลี่ยนแปลงนุ่มนวล

🔹 โค้ดบางส่วน

<style>
  .hover-scale-btn {
    background-color: #4CAF50;
    color: white;
    padding: 12px 24px;
    font-size: 16px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: transform 0.3s ease;
  }

  .hover-scale-btn:hover {
    transform: scale(1.1); /* ขยายเล็กน้อยเมื่อวางเมาส์ */
  }
</style>
  

💻 โค้ดทั้งหมดที่สามารถทำงานได้

<button class="hover-scale-btn">
  ปุ่มที่ขยายเล็กน้อยเมื่อวางเมาส์
</button>

<style>
  .hover-scale-btn {
    background-color: #4CAF50;
    color: white;
    padding: 12px 24px;
    font-size: 16px;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: transform 0.3s ease;
  }

  .hover-scale-btn:hover {
    transform: scale(1.1); /* ขยายเล็กน้อยเมื่อวางเมาส์ */
  }
</style>
  
คัดลอกแล้ว!

✨ เทคนิคการใช้เอฟเฟกต์ขยายอย่างมีประสิทธิภาพ

เอฟเฟกต์ขยายเมื่อโฮเวอร์ไม่ได้จำกัดแค่ปุ่มเท่านั้น แต่สามารถนำไปประยุกต์ใช้กับองค์ประกอบอื่นๆ ได้หลากหลาย โดยสามารถปรับค่าของ transform: scale() เพื่อควบคุมระดับการขยายได้ตามต้องการ เช่น scale(1.05) เพื่อขยายเล็กน้อย หรือ scale(1.5) เพื่อให้เกิดผลลัพธ์ที่โดดเด่นมากขึ้น

⏱ การปรับความเร็วของทรานซิชัน

หากต้องการเปลี่ยนความเร็วของแอนิเมชัน สามารถใช้ transition เพื่อควบคุมได้ เช่น transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275); จะให้ความรู้สึกที่เคลื่อนไหวได้อย่างลื่นไหลมากขึ้น และสามารถใช้ฟังก์ชัน cubic-bezier เพื่อกำหนดเส้นโค้งการเคลื่อนไหวแบบกำหนดเองได้

🎯 เอฟเฟกต์แบบผสม

การผสมเอฟเฟกต์ขยายกับเอฟเฟกต์อื่นจะช่วยเพิ่มความน่าสนใจได้ เช่น transform: scale(1.1) rotate(5deg); จะทำให้เกิดการขยายพร้อมการหมุนเล็กน้อย หากต้องการเพิ่มการเปลี่ยนพื้นหลังด้วย ให้ระบุหลายคุณสมบัติเช่น transition: transform 0.3s ease, background-color 0.3s ease;

ข้อควรระวังคือ หากขยายมากเกินไป (เช่น scale(1.5) ขึ้นไป) อาจทำให้ซ้อนกับองค์ประกอบอื่นหรือทำให้เลย์เอาต์เสียรูปได้ และเนื่องจาก transform จะยังคงรักษาขนาดพื้นที่ดั้งเดิมไว้ จึงเหมาะสำหรับการทำแอนิเมชันที่ไม่รบกวนเลย์เอาต์โดยรอบ

เทคนิคนี้สามารถประยุกต์ใช้กับภาพตัวอย่างใน UI แบบการ์ด รายการเมนูนำทาง หรือรายการสินค้า เพื่อดึงดูดความสนใจจากผู้ใช้ การเพิ่มการเคลื่อนไหวที่พอเหมาะจะช่วยยกระดับประสบการณ์ใช้งานโดยรวมของเว็บไซต์