Bagaimana saya bisa memiliki dua animasi CSS yang diputar dengan kecepatan berbeda ?
- Gambar harus berputar dan tumbuh pada saat yang bersamaan.
- Rotasi akan berputar setiap 2 detik.
- Pertumbuhan akan berputar setiap 4 detik.
Kode Contoh:
.image {
position: absolute;
top: 50%;
left: 50%;
width: 120px;
height: 120px;
margin:-60px 0 0 -60px;
-webkit-animation:spin 2s linear infinite;
-webkit-animation:scale 4s linear infinite;
}
@-webkit-keyframes spin {
100% {
transform: rotate(180deg);
}
}
@-webkit-keyframes scale {
100% {
transform: scaleX(2) scaleY(2);
}
}
http://jsfiddle.net/Ugc5g/3388/ - hanya satu animasi (yang terakhir diumumkan) yang diputar.
css
css-animations
Don P.
sumber
sumber
Jawaban:
TL; DR
Dengan koma, Anda dapat menentukan beberapa animasi masing-masing dengan propertinya sendiri seperti yang dinyatakan dalam jawaban CriticalError di bawah ini.
Contoh:
Jawaban asli
Ada dua masalah di sini:
# 1
Baris kedua menggantikan baris pertama. Jadi, tidak ada pengaruhnya.
# 2
Kedua bingkai utama berlaku di properti yang sama
transform
Sebagai alternatif, Anda bisa membungkus gambar dalam
<div>
dan menganimasikan masing-masing secara terpisah dan pada kecepatan yang berbeda.http://jsfiddle.net/rnrlabs/x9cu53hp/
sumber
Jika ada orang baru yang datang dan menangkap utas ini, Anda dapat menentukan beberapa animasi - masing-masing dengan propertinya sendiri - dengan koma.
Contoh:
sumber
Anda memang dapat menjalankan beberapa animasi secara bersamaan, tetapi contoh Anda memiliki dua masalah. Pertama, sintaks yang Anda gunakan hanya menentukan satu animasi. Aturan gaya kedua menyembunyikan yang pertama. Anda dapat menentukan dua animasi menggunakan sintaks seperti ini:
seperti di biola ini (di mana saya mengganti "skala" dengan "memudar" karena masalah lain yang dijelaskan di bawah ... Bersabarlah.): http://jsfiddle.net/rwaldin/fwk5bqt6/
Kedua, kedua animasi Anda mengubah properti CSS yang sama (transformasi) dari elemen DOM yang sama. Saya tidak percaya Anda bisa melakukan itu. Anda dapat menentukan dua animasi pada elemen yang berbeda, gambar dan elemen kontainer mungkin. Cukup terapkan salah satu animasi ke wadah, seperti di biola ini: http://jsfiddle.net/rwaldin/fwk5bqt6/2/
sumber
Anda tidak dapat memainkan dua animasi karena atribut hanya dapat ditentukan sekali. Lebih baik mengapa Anda tidak menyertakan animasi kedua di animasi pertama dan menyesuaikan bingkai utama untuk mendapatkan waktu yang tepat?
sumber
Anda bisa mencoba sesuatu seperti ini
atur induk ke
rotate
dan gambar kescale
sehingga wakturotate
danscale
waktu bisa berbedaTampilkan cuplikan kode
sumber