Saya mahu menggunakan animasi dalam aplikasi saya tetapi ia memerlukan fungsi @property dalam SCSS:
@property --border-angle { syntax: "<angle>"; inherits: true; initial-value: 0turn; }
Adakah terdapat cara untuk melakukan ini dalam komponen gaya?
Kod lengkap animasi terletak di: https://codepen.io/shshaw/pen/RwJwJJx
Atau bagaimana untuk menulis semula fungsi ini supaya ia tidak perlu menggunakan fungsi property
?
Seperti yang saya uji, kod yang disiarkan nampaknya berfungsi dengan
styled-components
一起使用,尽管浏览器似乎支持@property
Masih terdapat pengehadan, mis. ia berfungsi pada Chrome, tetapi bukan Firefox pada masa ini, jadi animasi kecerunan tidak akan dimainkan padanya.Saya cuba mencipta versi alternatif bagi kod yang disiarkan tanpa menggunakan
@property
dan ia juga berfungsi pada Firefox. Jika ia membantu, berikut ialah demo: stackblitz (kod disertakan di hujung jawapan).Kod asal yang disiarkan telah diuji menggunakan contoh berikut: stackblitz (Firefox tidak menyokong animasi kecerunan untuk
@property
pada masa ini).Berikut ialah versi alternatif tanpa
@property
的替代版本进行比较,它使用伪元素并添加了子div
来在styled-components
sebagai perbandingan, yang menggunakan elemen pseudo dan menambahkandiv
anak untuk mencipta semula animasi dalamkomponen gaya
.Demo Langsung: stackblitz (juga harus berfungsi untuk Firefox).
By the way,@property
是较新的标准 CSS。有关@property
ialah CSS standard yang lebih baharu. Untuk latar belakang lanjut tentang , lihat MDN p>. 🎜