


Contoh penggunaan css untuk merealisasikan kegembiraan Fat Orange (perkongsian contoh)
Artikel ini membawakan anda operasi berkaitan untuk melengkapkan animasi kreatif perubahan mood kucing oren melalui vite scss saya harap ia akan membantu semua orang.
Dalam keluaran ini, kami menggunakan vite scss untuk melengkapkan animasi kreatif perubahan mood kucing oren Kami tidak akan menggunakan sebarang kod js untuk logik di sini dan hanya bergantung pada css untuk melengkapkannya, jadi , melalui animasi dalam keluaran ini, anda boleh mempelajari beberapa animasi CSS dan teknik lukisan.
Ia agak comel. Apabila tikus (ikan) bergerak masuk dan keluar, oren menjadi kusam dan tidak bermaya. Tetapi apabila tikus (ikan) bergerak masuk, oren segera menjadi gembira apabila dia melihat ikan kegemarannya, malah cuaca menjadi lebih baik Ya, oren ini sangat tamak, dan ada sebab mengapa dia berubah menjadi oren yang gemuk.
Baiklah, kami akan memasuki teks utama Kami akan memahami proses pembuatan animasi ini dari pembinaan asas, lukisan dan animasi matahari, awan dan kucing.
1. Pembinaan dan struktur
yarn add vite sass sass-loader
Kami menggunakan vite dan sass untuk menyiapkan pembinaan projek dan penulisan gaya, jadi kami memasangnya terlebih dahulu.
<div id="app"> <div class="warrper"> <div class="sun"></div> <div class="cloud"></div> <div class="cat"> <div class="eye left"><div class="eye-hide"></div></div> <div class="eye right"><div class="eye-hide"></div></div> <div class="nose"></div> <div class="mouth"></div> </div> </div> </div>
Dalam html kita mula-mula menulis struktur. div#app berfungsi sebagai antara muka utama untuk mengisi skrin, dan div.warrper berfungsi sebagai kawasan paparan untuk kandungan utama, iaitu bulatan. Kemudian, dalam bulatan, kami meletakkan matahari div.sun, awan div.cloud, dan kucing div.cat Sudah tentu, kucing juga mempunyai mata, hidung, dan mulut pseudo-class untuk membuat segitiga.
2. Pembolehubah dan antara muka
$cat:rgb(252, 180, 125); :root{ --bgColor:rgb(81, 136, 168); --eyeHideTop:0px; --cloudLeft:45%; --mouthRadius:10px 10px 0 0; } #app{ width: 100%; height: 100vh; position: relative; display: flex; justify-content: center; align-items: center; background-image: repeating-linear-gradient(0deg, hsla(340,87%,75%,0.2) 0px, hsla(340,87%,75%,0.2) 30px,transparent 30px, transparent 60px),repeating-linear-gradient(90deg, hsla(340,87%,75%,0.2) 0px, hsla(340,87%,75%,0.2) 30px,transparent 30px, transparent 60px),linear-gradient(90deg, rgb(255,255,255),rgb(255,255,255)); } .warrper{ width: 320px; height: 320px; border-radius: 50%; border: 10px solid white; position: relative; overflow: hidden; background-color: var(--bgColor); transition: background-color 1s linear; cursor:url("./assets/fish.png"),default; &:hover{ --bgColor:rgb(178, 222, 247); --eyeHideTop:-20px; --cloudLeft:100%; --mouthRadius:0 0 10px 10px; } }
Kami mula-mula menentukan warna utama kucing, dan beberapa warna dan jarak yang akan ditukar, kerana kami akan menukar atribut ini melalui css3, jadi Capai pelaksanaan animasi tertentu.
Apa yang kami harapkan ialah apabila tetikus bergerak ke dalam bulatan, langit menjadi cerah, awan tersebar, dan kucing itu gembira dan penuh tenaga Oleh itu, bgColor: warna langit, kelopak mata kucing eyeHideTop y-. jarak paksi, awanAwan kiri x-axis offset Jarak, mulutRadius Nilai sudut bulat mulut kucing. Pada masa ini, nilai ini akan berubah apabila tetikus bergerak ke div.warrper. Selain itu, saya memperibadikan ikon tetikus untuk bergerak ke dalam bulatan dan mengubahnya menjadi ikan (iaitu kursor:url (alamat gambar)). Nilai selepas tuding di sini dikira oleh saya terlebih dahulu. Jika anda membangunkan animasi lain sekali lagi, anda boleh mengiranya semasa anda pergi.
3 Matahari dan awan
.sun{ width: 50px; height: 50px; position: absolute; background-color: rgb(255, 229, 142); border:7px solid rgb(253, 215, 91); border-radius: 50%; left: 55%; top: 14%; box-shadow: 0 0 6px rgb(255, 241, 48); }
Untuk matahari, kami melukis bulatan untuk menentukan kedudukannya, dan kemudian menggunakan unjuran bayang kotak untuk capai kesan glowing sikit .
Kemudian, kita mula melukis awan~
.cloud{ width: 100px; height: 36px; background-color: white; position: absolute; transition: left .6s linear; left: var(--cloudLeft); top: 23%; border-radius: 36px; animation: bouncy 2s ease-in-out infinite; &::before{ content: ''; width: 50px; height: 50px; background-color: white; border-radius: 50%; position: absolute; top: -23px; left: 18px; } &::after{ content: ''; width: 26px; height: 26px; background-color: white; border-radius: 50%; position: absolute; top: -16px; left: 56px; } } @keyframes bouncy { 0% { transform: scale(1); } 50% { transform: scale(1.05); } 100% { transform: scale(1); } }
Awan adalah sangat mudah, kita hanya melukis segi empat tepat bulat, dan kemudian menggunakan dua kelas pseudo Draw bulatan besar dan bulatan kecil disusun bersama untuk kelihatan seperti awan Selain itu, kami menambah animasi untuk menjadikannya lebih besar dan lebih kecil, memberikannya perasaan bergerak.
4. Kucing oren dan animasi
.cat{ width: 180px; height: 160px; background-color: $cat; position: absolute; bottom: -20px; left: 50%; margin-left: -90px; animation: wait 2s ease-in-out infinite; &::after, &::before{ content: ''; display: block; border-style: solid; border-width: 20px 30px; position: absolute; top: -30px; } &::after{ right: 0; border-color: transparent $cat $cat transparent; } &::before{ left: 0; border-color: transparent transparent $cat $cat; } .eye{ width: 42px; height: 42px; border-radius: 50%; position: absolute; top: 30px; background:white; overflow: hidden; display: flex; justify-content: center; align-items: center; .eye-hide{ height: 20px; position: absolute; top: var(--eyeHideTop); left: -2px; right:-2px; background-color: $cat; transition: top .5s ease-in-out; z-index: 2; } &::before{ content: ""; height: 36px; width: 36px; background-color:black; border-radius: 50%; } &::after{ content: ""; width: 24px; height: 24px; background-color: white; border-radius: 50%; position: absolute; right: 0px; top: 0px; } &.left{ left: 24px; } &.right{ right: 24px; } } .nose{ width: 0; height: 0; border-top: 7px solid rgb(248, 226, 226); border-left: 7px solid transparent; border-right: 7px solid transparent; position: absolute; left: 50%; margin-left: -7px; top: 70px; } .mouth{ width: 26px; height: 20px; background-color: rgb(255, 217, 217); position: absolute; top: 85px; left: 50%; margin-left: -13px; border-radius: var(--mouthRadius); transition: border-radius .2s linear; overflow: hidden; &::after, &::before{ content: ""; position: absolute; display: block; top: 0; border-top: 7px solid white; border-left: 2px solid transparent; border-right: 2px solid transparent; } &::after{ right: 5px; } &::before{ left: 5px; } } } @keyframes wait{ 0% { bottom: -20px; } 50% { bottom: -25px; } 100% { bottom: -20px; } }
Kita boleh menguraikan telinga (pseudo-class), sepasang mata, hidung dan mulut (termasuk dua yang runcing) gigi) = kucing.
Melalui kod di atas, tidak sukar untuk melihat bahawa ia dilakukan terutamanya menggunakan kedudukan mutlak untuk meletakkan organ muka. Kebanyakannya dilaksanakan menggunakan kod CSS asas. Satu-satunya perkara yang boleh diperhatikan ialah segi tiga telinga Kami melaksanakannya melalui pseudo-kelas Kami tidak menetapkan lebar dan ketinggian, dan terutamanya menggunakan teknik boder-lebar sempadan Ia adalah a helah CSS kecil Hidung di bahagian belakang dan taring di mulut semuanya direalisasikan dengan helah kecil ini.
Di samping itu, saya ingin bercakap tentang mata Kami mula-mula mengisi latar belakang putih dan kemudian menggunakan kelas pseudo untuk merealisasikan bulatan latar belakang hitam dan bulatan kecil putih di dalamnya jangan gunakan sempadan dengan bingkai bulatan putih, tidak perlu membazir kelas pseudo untuk melengkapkan bulatan latar belakang hitam? Kerana kami menggunakan limpahan: tersembunyi, kandungan tersembunyinya yang berlebihan ialah elemen di bawah sempadan, dan sempadan sempadan boleh menjadi tanpa kerugian, jadi kelas pseudonya tidak dapat menutup sempadannya Dengan cara ini, bulatan di mana kelopak mata meleleh masih sangat besar dan tidak semulajadi. Jadi kami mencipta kelas pseudo lain untuk melaksanakan bahagian bawah hitamnya, supaya bulatan luar tidak menggunakan sempadan.
Satu-satunya perkara yang tinggal ialah membuat animasi menunggu untuk kucing bergerak ke atas dan ke bawah untuk mencapai kesan pernafasan berterusan.
Ini melengkapkan kucing oren yang tidak bermaya. Kerana pada bahagian pertama, kami telah mengira pembolehubah yang berubah selepas bergerak masuk. Sekarang gerakkan tetikus masuk dan kesannya akan muncul~
Kesimpulan
Pada ketika ini kami telah menyiapkan animasi, dan saya harus katakan, dia sangat teruja apabila melihat makanan yang dia layak dipanggil Oren Gemuk!
(Belajar perkongsian video: tutorial video css)
Atas ialah kandungan terperinci Contoh penggunaan css untuk merealisasikan kegembiraan Fat Orange (perkongsian contoh). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Populariti React termasuk pengoptimuman prestasi, penggunaan semula komponen dan ekosistem yang kaya. 1. Pengoptimuman prestasi mencapai kemas kini yang cekap melalui mekanisme maya dan mekanisme yang berbeza. 2. Penggunaan semula komponen mengurangkan kod pendua oleh komponen yang boleh diguna semula. 3. Ekosistem yang kaya dan aliran data sehala meningkatkan pengalaman pembangunan.

React adalah alat pilihan untuk membina antara muka pengguna yang dinamik dan interaktif. 1) Komponen dan JSX membuat UI berpecah dan menggunakan semula mudah. 2) Pengurusan negeri dilaksanakan melalui cangkuk UseState untuk mencetuskan kemas kini UI. 3) Mekanisme pemprosesan acara bertindak balas terhadap interaksi pengguna dan meningkatkan pengalaman pengguna.

React adalah rangka kerja front-end untuk membina antara muka pengguna; Rangka kerja back-end digunakan untuk membina aplikasi sisi pelayan. React menyediakan kemas kini UI yang komponen dan cekap, dan Rangka Kerja Backend menyediakan penyelesaian perkhidmatan backend lengkap. Apabila memilih timbunan teknologi, keperluan projek, kemahiran pasukan, dan skalabiliti harus dipertimbangkan.

Hubungan antara HTML dan React adalah teras pembangunan front-end, dan mereka bersama-sama membina antara muka pengguna aplikasi web moden. 1) HTML mentakrifkan struktur kandungan dan semantik, dan React membina antara muka dinamik melalui komponenisasi. 2) Komponen React Gunakan sintaks JSX untuk membenamkan HTML untuk mencapai rendering pintar. 3) Kitaran Hayat Komponen Menguruskan Rendering HTML dan Kemas kini secara dinamik mengikut keadaan dan atribut. 4) Gunakan komponen untuk mengoptimumkan struktur HTML dan meningkatkan keupayaan. 5) Pengoptimuman prestasi termasuk mengelakkan penyampaian yang tidak perlu, menggunakan atribut utama, dan menjaga tanggungjawab tunggal komponen.

React adalah alat pilihan untuk membina pengalaman front-end interaktif. 1) React memudahkan pembangunan UI melalui komponen dan DOM maya. 2) Komponen dibahagikan kepada komponen fungsi dan komponen kelas. Komponen fungsi adalah lebih mudah dan komponen kelas menyediakan lebih banyak kaedah kitaran hayat. 3) Prinsip kerja React bergantung kepada algoritma DOM dan perdamaian maya untuk meningkatkan prestasi. 4) Pengurusan negeri menggunakan useState atau ini. Kaedah kitaran hayat seperti ComponentDidMount digunakan untuk logik tertentu. 5) Penggunaan asas termasuk membuat komponen dan pengurusan negeri, dan penggunaan lanjutan melibatkan cangkuk tersuai dan pengoptimuman prestasi. 6) Kesalahan biasa termasuk kemas kini status yang tidak betul dan isu prestasi, kemahiran debugging termasuk menggunakan reactdevtools dan sangat baik

React adalah perpustakaan JavaScript untuk membina antara muka pengguna, dengan komponen terasnya dan pengurusan negeri. 1) Memudahkan pembangunan UI melalui komponen dan pengurusan negeri. 2) Prinsip kerja termasuk perdamaian dan rendering, dan pengoptimuman dapat dilaksanakan melalui React.Memo dan Usememo. 3) Penggunaan asas adalah untuk membuat dan membuat komponen, dan penggunaan lanjutan termasuk menggunakan cangkuk dan konteksapi. 4) Kesalahan biasa seperti kemas kini status yang tidak betul, anda boleh menggunakan ReactDevTools untuk debug. 5) Pengoptimuman prestasi termasuk menggunakan react.memo, senarai virtualisasi dan codesplitting, dan menyimpan kod yang boleh dibaca dan dikekalkan adalah amalan terbaik.

React menggabungkan JSX dan HTML untuk meningkatkan pengalaman pengguna. 1) JSX membenamkan HTML untuk menjadikan pembangunan lebih intuitif. 2) Mekanisme DOM maya mengoptimumkan prestasi dan mengurangkan operasi DOM. 3) UI pengurusan berasaskan komponen untuk meningkatkan kebolehkerjaan. 4) Pengurusan negeri dan pemprosesan acara meningkatkan interaktiviti.

Komponen React boleh ditakrifkan oleh fungsi atau kelas, merangkumi logik UI dan menerima data input melalui prop. 1) Tentukan komponen: Gunakan fungsi atau kelas untuk mengembalikan elemen bertindak balas. 2) Rendering Component: React Call Render Kaedah atau Melaksanakan Komponen Fungsi. 3) Komponen multiplexing: Lulus data melalui prop untuk membina UI yang kompleks. Pendekatan kitaran hayat komponen membolehkan logik dilaksanakan pada peringkat yang berbeza, meningkatkan kecekapan pembangunan dan pemeliharaan kod.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Dreamweaver CS6
Alat pembangunan web visual

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

SublimeText3 Linux versi baharu
SublimeText3 Linux versi terkini

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna