ภาพเคลื่อนไหว: ตรวจสอบและแก้ไขเอฟเฟกต์ภาพเคลื่อนไหว CSS

Sofia Emelianova
Sofia Emelianova

ตรวจสอบและแก้ไขภาพเคลื่อนไหวด้วยแท็บลิ้นชักภาพเคลื่อนไหวของเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome

ภาพรวม

หากต้องการจับภาพภาพเคลื่อนไหว ให้เปิดแผงภาพเคลื่อนไหว เครื่องมือนี้ตรวจหาภาพเคลื่อนไหวและจัดเรียงออกเป็นกลุ่มโดยอัตโนมัติ

แผงภาพเคลื่อนไหวมีวัตถุประสงค์หลัก 2 อย่าง ได้แก่

  • ตรวจสอบภาพเคลื่อนไหว เล่นช้าลง เล่นซ้ำ หรือตรวจสอบซอร์สโค้ดของกลุ่มภาพเคลื่อนไหว
  • แก้ไขภาพเคลื่อนไหว ปรับเปลี่ยนช่วงเวลา การหน่วงเวลา ระยะเวลา หรือออฟเซ็ตคีย์เฟรมของ กลุ่มภาพเคลื่อนไหว ไม่รองรับการแก้ไขคีย์เฟรมและ Bezier

แผงภาพเคลื่อนไหวรองรับภาพเคลื่อนไหว CSS, การเปลี่ยน CSS, ภาพเคลื่อนไหวบนเว็บ และ View Transitions API ยังไม่รองรับภาพเคลื่อนไหว requestAnimationFrame

กลุ่มภาพเคลื่อนไหวคืออะไร

กลุ่มภาพเคลื่อนไหวคือชุดภาพเคลื่อนไหวที่ปรากฏมีความเกี่ยวข้องกัน

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

กล่าวคือ แผงภาพเคลื่อนไหวจะจัดกลุ่มภาพเคลื่อนไหวที่ทริกเกอร์ในบล็อกสคริปต์เดียวกันไว้ด้วยกัน แต่หากเป็นแบบไม่พร้อมกัน ก็จะจัดกลุ่มแยกกัน

เปิดแผงภาพเคลื่อนไหว

การเปิดแผงภาพเคลื่อนไหวทำได้ 2 วิธีดังนี้

  • เลือก เพิ่มเติม ปรับแต่งและควบคุม DevTools > เครื่องมือเพิ่มเติม > ภาพเคลื่อนไหว ภาพเคลื่อนไหวในเมนู
  • เปิดเมนูคำสั่งโดยกดแป้นต่อไปนี้

    • ใน macOS: Command+Shift+P
    • ใน Windows, Linux หรือ ChromeOS: Control+Shift+P

    จากนั้นเริ่มพิมพ์ Show Animations แล้วเลือกแผงลิ้นชักที่เกี่ยวข้อง แสดงภาพเคลื่อนไหว

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

แผงภาพเคลื่อนไหวว่างเปล่า

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

ทำความคุ้นเคยกับ UI ของแผงภาพเคลื่อนไหว

แผงภาพเคลื่อนไหวประกอบด้วย 4 ส่วนหลัก ดังนี้

ส่วนต่างๆ ของแผงภาพเคลื่อนไหว

  1. การควบคุม จากที่นี่ คุณสามารถกลุ่มภาพเคลื่อนไหวที่ล้างทั้งหมด หยุดชั่วคราว หรือ เล่นต่อ หรือเปลี่ยนความเร็วของกลุ่มภาพเคลื่อนไหวที่เลือก
  2. ภาพรวม แสดงกลุ่มภาพเคลื่อนไหวที่บันทึกไว้ 2 ประเภทที่มีเครื่องหมายไอคอน ได้แก่ แบบแบบเลื่อน และแบบปกติ (ตามเวลา)

    เลือกกลุ่มภาพเคลื่อนไหวที่นี่เพื่อตรวจสอบและแก้ไขในแผงรายละเอียด

  3. ไทม์ไลน์ ไทม์ไลน์อาจมีสถานะดังต่อไปนี้ โดยขึ้นอยู่กับประเภทกลุ่มภาพเคลื่อนไหว

    • หน่วยเป็นพิกเซลสำหรับภาพเคลื่อนไหวที่ขับเคลื่อนด้วยการเลื่อน
    • หน่วยเป็นมิลลิวินาทีสำหรับภาพเคลื่อนไหวที่อิงตามเวลา

    ในไทม์ไลน์ คุณสามารถ เล่นซ้ำภาพเคลื่อนไหว สครับ หรือข้ามไปยังจุดที่ต้องการได้

  4. รายละเอียด ตรวจสอบและแก้ไขกลุ่มภาพเคลื่อนไหวที่เลือก

หากต้องการจับภาพเคลื่อนไหว ให้เรียกให้แสดงขณะที่แผงภาพเคลื่อนไหวเปิดอยู่

ตรวจสอบภาพเคลื่อนไหว

เมื่อจับภาพเคลื่อนไหวแล้ว คุณเล่นภาพเคลื่อนไหวซ้ำได้ 2 วิธีดังนี้

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

คลิกปุ่ม ปุ่มความเร็วของภาพเคลื่อนไหว ความเร็วของภาพเคลื่อนไหวในแถบตัวควบคุมเพื่อเปลี่ยนความเร็วในการแสดงตัวอย่างของกลุ่มภาพเคลื่อนไหวที่เลือก

ดูรายละเอียดภาพเคลื่อนไหว

เมื่อคุณจับภาพกลุ่มภาพเคลื่อนไหวแล้ว ให้คลิกกลุ่มดังกล่าวจากแผงภาพรวมเพื่อดูรายละเอียด

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

แผงรายละเอียด

วางเมาส์เหนือภาพเคลื่อนไหวเพื่อไฮไลต์ในวิวพอร์ต คลิกภาพเคลื่อนไหวเพื่อเลือกในแผงองค์ประกอบ

วางเมาส์เหนือภาพเคลื่อนไหวเพื่อไฮไลต์ในวิวพอร์ต

ภาพเคลื่อนไหวบางรายการจะเล่นซ้ำไปเรื่อยๆ หากตั้งค่าพร็อพเพอร์ตี้ animation-iteration-count เป็น infinite แผงภาพเคลื่อนไหวจะแสดงคำจำกัดความและการทำซ้ำ

การทำซ้ำภาพเคลื่อนไหว

ส่วนซ้ายสุดของภาพเคลื่อนไหวคือส่วนที่มีสีเข้มสุด ส่วนทางด้านขวาที่จางกว่าแสดงถึงการทำซ้ำ

ตัวอย่างเช่น ในภาพหน้าจอถัดไป ส่วนที่ 2 และ 3 จะแสดงถึง การปรับปรุงจากส่วนที่ 1

แผนภาพการวนซ้ำของภาพเคลื่อนไหว

หากองค์ประกอบ 2 รายการใช้ภาพเคลื่อนไหวเดียวกัน แผงภาพเคลื่อนไหวจะกำหนดสีเดียวกันให้กับองค์ประกอบเหล่านั้น ตัวสีเองเป็นแบบสุ่มและไม่มีนัยสำคัญ เช่น ในภาพหน้าจอด้านล่าง องค์ประกอบ 2 รายการ div.eye.left::after และ div.eye.right::after มีภาพเคลื่อนไหวเดียวกัน (eyes) ใช้กับองค์ประกอบดังกล่าว เช่นเดียวกับองค์ประกอบ div.feet::before และ div.feet::after

ภาพเคลื่อนไหวที่มีรหัสสี

แก้ไขภาพเคลื่อนไหว

คุณแก้ไขภาพเคลื่อนไหวด้วยแผงภาพเคลื่อนไหวได้ 3 วิธีดังนี้

  • ระยะเวลาของภาพเคลื่อนไหว
  • การจับเวลาของคีย์เฟรม
  • การหน่วงเวลาเริ่มต้น

สำหรับส่วนนี้ สมมติว่าภาพหน้าจอถัดไปแสดงภาพเคลื่อนไหวต้นฉบับ

ภาพเคลื่อนไหวต้นฉบับก่อนการแก้ไข

หากต้องการเปลี่ยนระยะเวลาของภาพเคลื่อนไหว ให้ลากวงกลมแรกหรือวงกลมสุดท้าย

ระยะเวลาที่แก้ไข

หากภาพเคลื่อนไหวกำหนดกฎคีย์เฟรม ระบบจะแสดงกฎเหล่านี้เป็นวงกลมด้านในสีขาว ลากไอคอนเหล่านี้อย่างใดอย่างหนึ่งเพื่อเปลี่ยนระยะเวลาของคีย์เฟรม

แก้ไขคีย์เฟรมแล้ว

หากต้องการเพิ่มการหน่วงเวลาให้กับภาพเคลื่อนไหว ให้คลิกที่ภาพเคลื่อนไหวนั้นเอง ไม่ใช่วงกลม จากนั้นลากไปยังที่ใดก็ได้

ระยะเวลาที่แก้ไข

แก้ไข @keyframes แบบสด

เมื่อแก้ไข @keyframes ในสไตล์ คุณจะเห็นผลลัพธ์ในแผงภาพเคลื่อนไหวทันที

ลองใช้ในหน้าเดโมนี้

  1. เปิดแผงภาพเคลื่อนไหว โดยจะจับภาพภาพเคลื่อนไหวของชีพจรที่ทำงานอยู่บนหน้าเว็บโดยอัตโนมัติ เลือกภาพเคลื่อนไหวในส่วนการควบคุมในแถบการดำเนินการ
  2. ในส่วนองค์ประกอบ ให้ตรวจสอบองค์ประกอบด้วย class="pulser" และในส่วนสไตล์ ให้ค้นหาส่วน @keyframes pulse
  3. ลองแก้ไขคีย์เฟรม เช่น เปลี่ยนคีย์เฟรมที่ 2 จาก 50% เป็น 20%
  4. สังเกตว่าการเปลี่ยนแปลงในรูปแบบส่งผลต่อภาพเคลื่อนไหวที่บันทึกโดยแผงภาพเคลื่อนไหวอย่างไร

แก้ไของค์ประกอบเทียม ::view-transition ระหว่างภาพเคลื่อนไหว

เมื่อใช้ View Transitions API คุณสามารถเปลี่ยน DOM ได้ในขั้นตอนเดียวในขณะที่สร้างการเปลี่ยนแบบภาพเคลื่อนไหวระหว่าง 2 สถานะ ในระหว่างภาพเคลื่อนไหว API จะสร้างต้นไม้องค์ประกอบจำลองที่มีโครงสร้างดังนี้

::view-transition
└─ ::view-transition-group(root)
   └─ ::view-transition-image-pair(root)
      ├─ ::view-transition-old(root)
      └─ ::view-transition-new(root)

วิธีแก้ไขโครงสร้างนี้ในองค์ประกอบ > รูปแบบ

  1. เปิดเครื่องมือสำหรับนักพัฒนาเว็บและตรวจสอบหน้าเว็บที่ใช้ View Transitions API เช่น หน้าเดโมนี้
  2. ในส่วนภาพเคลื่อนไหว ให้คลิก หยุดชั่วคราว
  3. ทริกเกอร์ภาพเคลื่อนไหวบนหน้า แผงภาพเคลื่อนไหวจะจับภาพนั้นไว้และหยุดชั่วคราวทันที ต่อไปนี้คุณจะดูโครงสร้าง ::view-transition ใน DOM ได้ที่ด้านบนขององค์ประกอบ <head>

    การแก้ไข CSS ขององค์ประกอบสมมติ ::view-transition

  4. ในองค์ประกอบ > รูปแบบ แก้ไข CSS ขององค์ประกอบเทียม ::view-transition

  5. เล่นภาพเคลื่อนไหวต่อและเล่นซ้ำเพื่อดูผลลัพธ์

โปรดดูข้อมูลเพิ่มเติมที่การเปลี่ยนที่ราบรื่นและง่ายดายด้วย View Transitions API