CSS hoạt hình nhảy
Hiệu ứng Bounce Animation được sử dụng để di chuyển nhanh phần tử lên, lùi hoặc ra khỏi bề mặt sau khi va chạm vào nó cú pháp@keyframes bounce { 0%, 20%, 50%, 80%, 100% {transform: translateY(0);} 40% {transform: translateY(-30px);} 60% {transform: translateY(-15px);} } Thông sốChuyển đổi - Chuyển đổi áp dụng cho chuyển đổi 2d và 3d thành một phần tử Thí dụReload page Nó sẽ tạo ra kết quả sau - Hoạt ảnh nảy mượt mà có thể được thực hiện với sự trợ giúp của HTML và CSS. Nó sẽ tạo ra kết quả đầu ra thú vị và mong muốn Đối với dự án này, cần có một div đơn giản với class ball trong trang HTML
Chúng tôi sẽ chuyển sang CSS để lập trình hoạt hình. Bây giờ, Flexbox được sử dụng để có quả bóng ở giữa trang và làm cho quả bóng có kích thước 70px x 70px. Nó có thể được thực hiện ở bất kỳ kích thước nào do người dùng lựa chọn vì nó xác định kích thước của quả bóng Reload page0 Reload page1 Reload page2 Reload page3 Reload page1 Reload page5____16 "ball" 0"ball" 1"ball" 2
Reload page1 "ball" 6"ball" 0"ball" 8"ball" 9Reload page1____91 "ball" 0"ball" 8"ball" 9_______11____96____97 Reload page1 Reload page00 "ball" 0Reload page02 Reload page03
Ở đây, Reload page05 được dùng để căn giữa quả bóng theo chiều ngang. ______106 biến hình vuông thành hình tròn. ______107 biến hình tròn thành màu cam. Có nhiều ký hiệu mã khác nhau cho màu sắc được ghi nhớ. tạo khung hình chính. Khung hình chính trong hoạt ảnh CSS cho phép kiểm soát hoàn toàn hoạt ảnh. Sử dụng đơn giản từ khóa @keyframes theo sau là tên của hoạt ảnh, tôi. e, bóng nảy êm Reload page08 Reload page09 Reload page10
Trong khung hình chính, hãy sử dụng các từ khóa từ và đến để tạo điểm bắt đầu và điểm kết thúc cho hoạt ảnh Reload page08 ________ 109 ________ 114 ________ 115 ________ 83 Reload page09 Reload page18 Reload page19 "ball" 3
Theo hiểu biết của chúng tôi, chúng tôi có thể thêm các giá trị bắt đầu và kết thúc vào hoạt ảnh. Để tạo hiệu ứng nảy, chúng ta cần biến đổi vị trí của quả bóng. biến đổi cho phép sửa đổi tọa độ của một phần tử nhất định. Do đó, khung hình chính cuối cùng Reload page08 Reload page09 Reload page24 Reload page25 Reload page26 Reload page27 Reload page28 Reload page27 Reload page28 Reload page27 Reload page32 Reload page09 Reload page34 Reload page25 Reload page26 Reload page27 Reload page28 Reload page39 Reload page28 Reload page27 Reload page32
Ở đây, các hàm translate3d nhận ba đầu vào, sự thay đổi theo trục 3 chiều (x, y, z). Nó sẽ dịch quả bóng theo trục 3 chiều. Bóng muốn di chuyển lên xuống thì bóng cần tịnh tiến theo trục y Chạy khung hình chính. Vì @keyframe đã được tạo nên bây giờ nó cần chạy. Trong mã được đề cập ở trên của. ball{ }, phải thêm một dòng sau Reload page14 Reload page09 Reload page16 Reload page17 Reload page09 Reload page19_______150 Reload page66 Reload page50 Reload page28 Reload page69 Reload page28 "ball" 01Reload page28 Reload page50 "ball" 04 CSS hiện cung cấp cho chúng tôi nhiều kỹ thuật khác nhau để đạt được điều tương tự với một vài dòng mã. Để xác thực điều này, hoạt ảnh cuối cùng trong bài viết này sẽ cần ít hơn 10 dòng. Tất nhiên, tất cả phụ thuộc vào độ phức tạp của hoạt hình. Vì vậy, những gì sẽ được làm gì? Nếu bạn đã xem bài viết gần đây của tôi về Parcel + React, thì bạn có thể đã bắt gặp hoạt ảnh Parcel mà tôi đang tạo. Nếu bạn chưa xem nó, hãy xem nó một lần nữa Hoạt hình khá đơn giản nhưng hiệu quả. Chúng ta có thể nâng cao nhận thức và nó có thể hoạt động như một lời kêu gọi hành động trong bối cảnh phù hợp. Tuy nhiên, tạo hoạt ảnh là nguồn chính để thu hút sự chú ý của người dùng nên là một di tích từ những năm 90 Tìm cách để cải thiện kỹ năng của bạn? Điểm băt đâuCơ sở chỉ được làm bằng một gradient xuyên tâm với biểu tượng được đặt ở giữa chỉ mục. scssĐã sao chép vào khay nhớ tạm. Sao chép Ở đây chúng tôi đang xác định một hoạt ảnh có tên là "nhảy" sẽ phát hơn 1. 2 giây và sẽ được lặp lại vô thời hạn Không có nó, nó có vẻ hơi buồn nên hãy làm cho nó chuyển động Giải phẫu của hoạt hìnhĐể hiểu đầy đủ những gì chúng tôi sẽ làm và lý do tại sao, chúng tôi muốn xem hoạt ảnh, từng khung hình và lưu ý những bước chúng tôi cần thực hiện để đạt được kết quả cuối cùng
Tất cả những gì chúng ta sẽ sử dụng cho đó là các biến đổi CSS. Chúng tôi đang bắt đầu với một gói bị méo mó, từ một vị trí bị đè bẹp. Đây là thứ sẽ tạo ấn tượng tạo đà để nhảy lên trên. Để làm cho nó trông phẳng, chúng ta có thể sử dụng chỉ mục. scssĐã sao chép vào khay nhớ tạm. Sao chép Để giữ nó ở vị trí ban đầu, chúng tôi cũng phải vượt qua Từ vị trí này, chúng tôi muốn di chuyển nó lên trên đồng thời loại bỏ tỷ lệ bị biến dạng chỉ mục. scssĐã sao chép vào khay nhớ tạm. Sao chép Đến một nửa hoạt hình, nó sẽ đạt đến đỉnh nên tôi chọn 50% cho bước tiếp theo. Chúng tôi đặt lại tỷ lệ thành 1. 1 và di chuyển nó trên trục y -100%, có nghĩa là nó sẽ tăng lên. Nhìn vào hình ảnh động ở giai đoạn này sẽ có vẻ kỳ lạ khi chúng ta bắt đầu từ một vị trí bị đè bẹp và kết thúc với kích thước ban đầu của nó. Khi hoạt ảnh được lặp lại, nó sẽ ngay lập tức nhảy vào vị trí được chia tỷ lệ, điều này sẽ làm cho hoạt ảnh bị lởm chởm Chúng tôi muốn phần cuối của lần lặp trông giống như phần đầu của phần tiếp theo để tạo hoạt ảnh mượt mà. Để khắc phục, chúng tôi chỉ cần quay lại trạng thái ban đầu để chúng tôi chỉ thực hiện các phép biến đổi tương tự cho 100% mà chúng tôi có cho 0% chỉ mục. scssĐã sao chép vào khay nhớ tạm. Sao chép Tất cả những gì còn lại là làm cho chiếc hộp rung chuyển ở đỉnh quỹ đạo của nó Tạo rung độngKhi gói hàng chạm tới đỉnh, chúng tôi bắt đầu xoay nó qua lại, chính xác bốn lần. Để làm được điều đó, chúng ta có thể sử dụng biến đổi Reload page00 chỉ mục. scssĐã sao chép vào khay nhớ tạm. Sao chép Chúng tôi bắt đầu bằng cách xoay nó 15° sang phải rồi xoay nó 30° sang trái. (-15° so với vị trí ban đầu) Chúng tôi lặp lại hai bước một lần nữa rồi quay lại vị trí bắt đầu. Tôi đã sử dụng một bước 5% cho mỗi vòng quay. Bạn có thể thử nghiệm với thời gian. Tăng khoảng cách giữa các bước sẽ làm chậm vòng quay, giảm nó sẽ làm cho nó nhanh hơn Kết quả cuối cùng là một hộp nhảy vui vẻ. 📦 Thoải mái chơi đùa với dự án cuối cùng trên Codepen |