Animasi CSS yang kelihatan lebih dekat dan lebih jauh dari kiri ke kanan, mensimulasikan pergerakan fasad kaca pada meja putar
P粉208469050
2023-09-04 21:59:55
<p>Saya cuba mencipta animasi CSS yang bergerak secara mendatar dari kiri ke kanan sambil kelihatan lebih dekat dan jauh, mensimulasikan pergerakan kaca pada plat meja putar apabila dilihat dari hadapan. </p>
<p>Saya semakin hampir, tetapi ia masih kelihatan tidak betul, pada masa ini ia kelihatan seperti bergerak mengikut bentuk berlian dan bukannya bulatan. </p>
<p>Ini yang saya cuba..</p>
<p>
<pre class="brush:css;toolbar:false;">.roll {
paparan: blok;
lebar: 100px;
ketinggian: 100px;
latar belakang: merah;
jidar: 10px auto 10px auto;
animasi: gulung 2s cubic-bezier(0.42, 0, 0.58, 1) tak terhingga;
}
@keyframes roll {
0%,
100% {
transform: translateX(0%) skala(1);
}
20% {
transform: translateX(50%) skala(0.8);
}
50% {
transform: translateX(0%) skala(0.6);
}
80% {
transform: translateX(-50%) skala(0.8);
}
}</pre>
<pre class="brush:html;toolbar:false;"><div class="roll"></div></pre>
</p>
Jika anda mahu menghidupkan segi empat sama pada bulatan mendatar dan menghadapkan ia menghadap penonton, anda boleh menggunakan transformasi 3D pada elemen pembalut dan terbalikkannya pada segi empat sama supaya ia kekal menghadap penonton.
Intinya adalah untuk memutarkan elemen pada paksi Y seperti "dalam kehidupan sebenar".
Berikut adalah contoh:
Sila ambil perhatian bahawa anda perlu menggunakan
transform-style:preserve-3d;
(Maklumat lanjut tentang MDN)