Fakakaukauloto atu ki he meʻá ni: ʻokú ke kau ki ha poloseki foʻou, luelue atu ki he codebase, pea ʻi he ʻuluaki ngaahi houa siʻí, ʻokú ke ʻiloʻi ha meʻa ʻoku fakatupu loto-mamahi ʻokú ke maheni mo ia. Movetevete 'i he ngaahi stylesheets, 'Oku ke ma'u 'a e ngaahi faka'uhinga lahi @keyframes ki he ngaahi faka'ata tefito tatau. Tolu kehekehe 'o e ngaahi ola 'o e fade-'i, ua pe tolu 'o e ngaahi kehekehe 'o e slaid, ha nima 'o e ngaahi faka'ata fakalahi, pea 'ikai si'i hifo 'i he ongo faka'ata kehekehe 'o e spin koe'uhi, sai, ko e ha 'oku 'ikai? @ngaahi fakava'e 'o e pulse { mei he { meʻafua: 1; } ki he { meʻafua: 1.1; } }

@keyframes lahi ange-pulse { 0%, 20%, 100% { meʻafua: 1; } 10%, 40% { meʻafua: 1.2; } }

Kapau ‘oku ongo maheni ‘a e tu‘unga ko ení, ‘oku ‘ikai ko koe pē. 'I he'eku a'usia 'i he ngaahi poloseki kehekehe, Ko e taha 'o e ngaahi ikuna vave tu'uma'u taha te u lava 'o 'oatu ko hono fakatahataha'i mo e standardizing keyframes. ‘Oku hoko ia ko ha sīpinga falala’anga ‘oku ou ‘amanaki atu he taimi ni ki he fakama’a ko ‘eni ko e taha ‘o ‘eku ngaahi fuofua ngaue ‘i ha fa’ahinga codebase fo’ou. Ko e Logic 'i Mui 'i he Moveuveu . Ko e redundancy ko 'eni 'oku 'uhinga haohaoa ia 'i ho'o fakakaukau ki ai. ʻOku tau fakaʻaongaʻi kotoa ʻa e ngaahi fakaʻaliʻali tefito tatau ʻi heʻetau ngāue fakaʻahó: fades, slides, zooms, spins, mo e ngaahi ola angamaheni kehe. 'Oku 'aonga 'aupito 'a e ngaahi animations ko 'eni, pea 'oku faingofua ke uipi hake ha faka'uhinga vave @keyframes ke ma'u 'a e ngaue. 'I he 'ikai ha sisitemi faka'ata centralized, 'Oku fakanatula 'a e kau developers ke tohi 'a e ngaahi keyframes ko 'eni mei he kamata'anga, 'o 'ikai ke nau 'ilo'i 'oku 'osi 'i ai 'a e ngaahi faka'ata tatau 'i ha feitu'u kehe 'i he codebase. 'Oku tautautefito ki he angamaheni 'eni 'i he taimi 'oku ngaue ai 'i he ngaahi 'atakai 'oku makatu'unga 'i he konga ('a ia 'oku fai 'e he tokolahi taha 'o kitautolu 'i he ngaahi 'aho ni), 'i he taimi 'oku fa'a ngaue fakataha ai 'a e ngaahi timi 'i he ngaahi konga kehekehe 'o e tohi kole. Ko e olá? Moveuveu ʻo e ʻanimasí. Ko e Ki'i Palopalema . Ko e ngaahi me'a mahino taha 'i he keyframes 'o e duplication ko e taimi fakalakalaka 'oku maumau'i mo e bloat 'o e code 'oku 'ikai fie ma'u. 'Oku 'uhinga 'a e ngaahi faka'uhinga keyframe lahi ki he ngaahi feitu'u lahi ke fakafo'ou 'i he taimi 'oku liliu ai 'a e ngaahi fie ma'u. Fiema'u ke fakatonutonu 'a e taimi 'o ho'o fade animation? Te ke fie ma’u ke tuli ‘a e ngaahi me’a kotoa pe ‘i he tafa’aki ‘o ho’o codebase. Fie standardize 'a e ngaahi ngaue fakafaingofua'i? Talamonu atu ki he kumi 'o e ngaahi kehekehe kotoa pe. Ko e fakalahi ko 'eni 'o e ngaahi poini tokanga'i 'oku ne 'ai na'a mo e ngaahi fakafo'ou faingofua 'o e animation ko ha ngaue 'oku fakamoleki taimi. Ko e Palopalema Lahi Ange 'Oku fakatupu 'e he keyframes ko 'eni 'a e toe fakafoki ha palopalema 'oku lahi ange 'a e insidious lurking 'i lalo 'i he funga: 'a e tauhele 'o e scope fakamamani lahi. Na'a mo e taimi 'oku ngaue ai mo e ngaahi 'atakai 'oku makatu'unga 'i he konga, 'Oku faka'uhinga'i ma'u pe 'a e CSS keyframes 'i he 'atakai fakamamani lahi. 'Oku 'uhinga 'eni 'oku faka'aonga'i 'a e keyframes kotoa pe ki he ngaahi konga kotoa pe. Maʻu pē. 'Io, 'Oku 'ikai ke faka'aonga'i 'e ho'o animation 'a e ngaahi keyframes na'a ke faka'uhinga'i 'i ho'o konga. 'Oku ne faka'aonga'i 'a e ngaahi keyframes fakamuimuitaha 'oku nau fe'unga mo e hingoa tatau tofu pe ko ia na'e uta ki he 'atakai fakamamani lahi. Ko e taimi pe 'oku tatau ai ho'o ngaahi keyframes kotoa pe, 'e ngali hange 'eni ko ha ki'i me'a si'isi'i. Ka ko e momeniti ‘oku ke fie customize ai ha animation ki ha keisi faka’aonga’i pau, ‘oku ke faingata’a’ia, pe kovi ange, ko koe ‘a e tokotaha ‘oku ne fakatupu kinautolu. Pe ‘e ‘ikai ke ngaue ho’o animation koe’uhi ko ha konga ‘e taha ‘oku uta hili ho’o, overwriting ho’o keyframes, pe ko ho’o konga ‘oku uta fakamuimuitaha pea liliu fakatu’upakē ‘a e ‘ulungaanga ‘o e animation ki he konga kehe kotoa pe ‘o faka’aonga’i ‘a e hingoa ‘o e keyframe ko ia, pea mahalo ‘e ‘ikai te ke ‘ilo’i ia. Ko e fakatātā faingofua ‘eni ‘oku ne fakahaa’i ‘a e palopalema: .konga-taha { /* ngaahi sitaila 'o e konga */ mo'ui: pulse 1s faingofua-'i-tu'a fetongi ta'efakangatangata; }

/* 'e 'ikai ngaue 'a e faka'uhinga ko 'eni @keyframes */ @ngaahi fakava'e 'o e pulse { mei he { meʻafua: 1; } ki he { meʻafua: 1.1; } }

/* kimui ange 'i he code... */

.konga-ua { /* ngaahi sitaila 'o e konga */ fakamo'ui: pulse 1s faingofua-'i-tu'a ta'efakangatangata; }

/* 'e ngaue 'aki 'a e keyframes ko 'eni ki he ongo konga */ @ngaahi fakava'e 'o e pulse { 0%, 20%, 100% { meʻafua: 1; } 10%, 40% { meʻafua: 1.2; } }

'Oku faka'aonga'i 'e he ongo konga 'a e hingoa 'o e animation tatau, ka 'oku overwrites 'e he faka'uhinga hono ua @keyframes 'a e 'uluaki taha. Ko 'eni 'e fakatou faka'aonga'i 'e he konga-taha mo e konga-ua 'a e keyframes hono ua, tatau ai pe pe ko e konga fe 'oku ne fakamatala'i 'a e keyframes. Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 1 [forked] 'e Amit Sheen. Ko e konga kovi tahá? 'Oku fa'a ngaue haohaoa 'eni 'i he fakalakalaka fakalotofonua ka 'oku maumau'i fakamisiteli 'i he ngaohi 'i he taimi 'oku liliu ai 'e he ngaahi founga langa 'a e hokohoko 'o e uta 'o ho'o stylesheets. 'Oku ke faka'osi 'aki 'a e ngaahi faka'ata 'oku nau 'ulungaanga kehekehe 'o fakatatau ki he ngaahi konga 'oku uta pea 'i he hokohoko. Ko e Fakaleleiʻangá: Ngaahi Keyframes Fakatahatahaʻi . Ko e tali ki he moveuveu ko 'eni 'oku faka'ohovale 'a e faingofua: predefined keyframes malohi 'oku tanaki 'i ha stylesheet vahevahe. Kae 'ikai ke tuku ke fakamatala'i 'e he konga kotoa pe 'a 'ene ngaahi faka'ata, 'Oku tau fa'u 'a e ngaahi keyframes centralized 'oku lelei-fakatohi, faingofua ke .faka'aonga'i, tauhi, pea fakafe'unga'i ki he ngaahi fie ma'u pau 'o ho'o poloseki. Fakakaukau ki ai ko e ngaahi fakaʻilonga keyframes. Hange pe ko 'etau faka'aonga'i 'a e ngaahi faka'ilonga ki he lanu mo e spacing, pea ko e tokolahi 'o kitautolu 'oku 'osi faka'aonga'i 'a e ngaahi faka'ilonga ki he ngaahi koloa 'o e animation, hange ko e loloa mo e ngaahi ngaue fakafaingofua'i, ko e ha 'oku 'ikai ke faka'aonga'i ai 'a e ngaahi faka'ilonga ki he keyframes foki? ‘E lava ke fakataha’i fakanatula ‘a e founga ko ‘eni mo ha fa’ahinga workflow token tisaini lolotonga ‘oku ke faka’aonga’i, lolotonga hono solova fakatou’osi ‘a e ki’i palopalema (code duplication) mo e palopalema lahi ange (ngaahi fepakipaki ‘o e ‘atakai fakamamani lahi) ‘i he ‘alu pe ‘e taha. ʻOku hangatonu ʻa e fakakaukaú: faʻu ha maʻuʻanga moʻoni ʻe taha ki heʻetau ngaahi fakaʻaliʻali angamaheni kotoa pē. 'Oku 'i he stylesheet vahevahe ko 'eni 'a e ngaahi keyframes kuo ngaohi fakalelei 'oku nau 'ufi'ufi 'a e ngaahi sipinga 'o e mo'ui 'oku faka'aonga'i mo'oni 'e he'etau poloseki. 'Ikai toe mate'i pe 'oku 'osi 'i ai ha fade animation 'i ha feitu'u 'i he'etau codebase. 'Ikai toe 'i ai ha tohi fakatu'upakee 'o e ngaahi animations mei he ngaahi konga kehe. Ka ko e kī ‘eni: ‘oku ‘ikai ko ha ngaahi faka‘ali‘ali hiki-fakapipiki tu‘uma‘u pē ‘eni. ‘Oku nau fa’u ke nau malohi mo customizable ‘o fakafou ‘i he ngaahi koloa angamaheni ‘o e CSS, ‘o faka’ata ai ke tau tauhi ‘a e tu’uma’u lolotonga ‘oku kei ma’u ‘a e fe’unu’aki ke fakafe’unga’i ‘a e ngaahi faka’ata ki he ngaahi keisi faka’aonga’i pau, hange ko ia kapau ‘oku ke fie ma’u ha ki’i lahi ange “pulse” faka’ata ‘i ha feitu’u ‘e taha. Ko hono langa 'o e 'Uluaki Faka'ilonga Keyframes . Ko e taha ʻo e ngaahi ʻuluaki fuaʻiʻakau tautau maʻulalo ʻoku totonu ke tau fehangahangai mo iá ko e “fade-in” animation. 'I he taha 'o 'eku ngaahi poloseki kimui ni mai, Na'a ku ma'u 'a e ngaahi faka'uhinga kehekehe 'e hongofulu tupu 'o e fade-in, pea 'io, na'a nau animated kotoa pe 'a e opacity mei he 0 ki he 1. Ko ia, tau fa’u ha stylesheet fo’ou, ui ia ko e kf-tokens.css, hū mai ia ki he’etau poloseki, pea fokotu’u ‘etau ngaahi keyframes mo e ngaahi fakamatala totonu ‘i loto ‘i ai. /* ngaahi fakatātā mahu'inga-ngaahi faka'ilonga.css */

/* * Fade 'I - fade 'a e hū'anga 'o e mo'ui * Faka'aonga'i: mo'ui: kf-fade-'i he 0.3s faingofua-'i tu'a; */ @ngaahi fakatātā mahuʻinga kf-mole-ʻi { mei he { ʻikai ʻasi: 0; } ki he { ʻikai ʻasi: 1; } }

'Oku fetongi 'e he fakaha 'e taha ko 'eni 'o e @keyframes 'a e ngaahi faka'ata kotoa pe 'oku movetevete 'i he fade-'i he 'etau codebase. Maʻa, faingofua, mo fakaʻaongaʻi fakamāmani lahi. Pea ko 'eni kuo tau ma'u 'a e faka'ilonga ko 'eni 'oku faka'uhinga'i, 'e lava ke tau faka'aonga'i ia mei ha fa'ahinga konga 'i he kotoa 'o 'etau poloseki: .founga { fakamo'ui: kf-mole-'i he 0.3s faingofua-'i tu'a; }

.me'angaue { fakamo'ui: kf-mole-'i he 0.2s faingofua-'i-tu'a; }

.fakatokanga { fakamo'ui: kf-mole-'i he 0.5s faingofua-'i tu'a; }

Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 2 [forked] 'e 'Amit Sheen. Fakatokanga’i ange: ‘Oku mau ngaue’aki ‘a e kf- prefix ‘i he’emau ngaahi hingoa kotoa pe @keyframes. 'Oku ngaue 'a e prefix ko 'eni ko ha namespace 'oku ne ta'ofi 'a e ngaahi fepakipaki 'o e fakahingoa mo e ngaahi faka'ata 'oku 'i ai 'i he poloseki pea 'oku ne 'ai ke mahino vave 'oku ha'u 'a e ngaahi keyframes ko 'eni mei he'etau faile 'o e ngaahi faka'ilonga keyframes. Ngaohi ha Slide Fakamālohi 'Oku ngaue lelei 'aupito 'a e kf-fade-'i he keyframes koe'uhi he 'oku faingofua pea 'oku si'isi'i 'a e loki ke mess 'a e ngaahi me'a. 'I he ngaahi animations kehe, Ka neongo ia, 'Oku fie ma'u ke tau lahi ange 'a e malohi, pea 'i heni 'e lava ke tau leverage 'a e malohi lahi 'o e ngaahi koloa angamaheni 'o e CSS. Ko e feitu'u 'eni 'oku ulo mo'oni ai 'a e ngaahi faka'ilonga keyframes 'i hono fakafehoanaki ki he ngaahi faka'ata static movetevete. Tau to’o ha tu’unga angamaheni: “slide-in” ngaahi faka’ali’ali. Kae slide mai mei fe? 100px mei he to'omata'u? 50% mei he to'ohema? ‘Oku totonu ke hū mai mei ‘olunga ‘i he screen? Pe mahalo 'oku lele mai mei lalo? Ko ia 'oku lahi 'a e ngaahi me'a 'e lava ke hoko, ka 'i he 'ikai ke fa'u ha ngaahi keyframes kehekehe ki he fakahinohino takitaha mo e kehekehe takitaha, 'e lava ke tau langa ha faka'ilonga 'e taha 'oku fe'unga mo e ngaahi tu'unga kotoa pe: /* * Slide In - fakahinohino 'o e 'ata 'o e 'ata * Faka'aonga'i 'a e --kf-slide-mei he pule'i 'o e fakahinohino . * Faka'aonga'i: 'oku 'asi mai mei he to'ohema (-100%) * Ngaue'aki: * faka'ata: kf-'asi-'i he 0.3s faingofua-'i tu'a; * --kf-fakakaukau-mei he: -100px 0; // faka'uli mei he to'ohema * --kf-faka'ata-mei he: 100px 0; // faka'uli mei he to'omata'u * --kf-fakakaukau-mei he: 0 -50px; // faka'uli mei 'olunga */

@ngaahi fakatātā mahuʻinga kf-ʻasi-ʻi { mei he { liliu: var (--kf-'asi-mei he, -100% 0); } ki he { liliu: 0 0; } }

Ko 'eni 'e lava ke tau faka'aonga'i 'a e faka'ilonga @keyframes 'e taha ko 'eni ki ha fa'ahinga fakahinohino 'o e 'ata 'aki pe hono liliu 'o e --kf-slide-mei he koloa angamaheni: .taha { fakamo'ui: kf-'asi-'i he 0.3s faingofua-'i tu'a; /* Faka'aonga'i 'a e mahu'inga 'o e default: ngaahi slaid mei he to'ohema */ }

.fakatokanga { fakamo'ui: kf-'asi-'i he 0.4s faingofua-'i tu'a; --kf-fakakaukau-mei he: 0 -50px; /* 'asi mei 'olunga */ }

.founga { moʻui: kf-mole-'i he 0.5s, kf-'asi-'i he 0.5s kiupiki-pesi(0.34, 1.56, 0.64, 1); --kf-faka'ata-mei he: 50px 50px; /* slide mei lalo-to'omata'u */ }

ʻOku ʻomi ʻe he founga ko ʻení ha feʻunuʻaki taʻealafakakaukauʻi lolotonga hono tauhi ʻo e tuʻumaʻú. Ko e fakahā keyframe ʻe taha, ngaahi meʻa ʻe lava ke hoko taʻefakangatangata. Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 3 [forked] 'e Amit Sheen. Pea kapau 'oku tau fie ma'u ke 'ai 'etau ngaahi faka'ata ke toe lahi ange, 'o faka'ata 'a e ngaahi ola 'o e “slide-out” foki, te tau lava .tanaki atu pe ha --kf-slide-ki he koloa angamaheni, ‘oku tatau mo e me’a te tau sio ki ai ‘i he konga hoko. Ngaahi Fakatātā Tefito ʻo e Zoom Fakahangatonu ʻe ua Ko e taha 'o e ngaahi animation angamaheni 'oku ma'u 'e he duplicated 'i he ngaahi poloseki ko e "zoom" ngaahi ola. Pe ko ha me’afua fakapulipuli-hake ki he ngaahi fekau toast, ha fakalahi fakaofo-‘i he modals, pe ko ha ola anga-malū ‘o e me’afua-ki lalo ki he ngaahi ‘ulu’i tohi, ‘oku ‘i he feitu’u kotoa pe ‘a e ngaahi faka’ata fakalahi. Kae ‘ikai ke fa’u ha ngaahi keyframes kehekehe ki he mahu’inga ‘o e me’afua takitaha, tau langa ha seti ‘e taha ‘o e ngaahi keyframes kf-zoom ‘oku fe’unga:

/* * Zoom - me'afua 'o e mo'ui * Faka'aonga'i 'a e --kf-fakalahi-mei he --kf-fakalahi-ki ke pule'i 'a e ngaahi mahu'inga 'o e me'afua . * Fakalukufua: fakalahi mei he 80% ki he 100% (0.8 ki he 1) * Ngaue'aki: * faka'ata: kf-fakalahi 0.2s faingofua-ki tu'a; * --kf-fakalahi-mei he: 0.5; --kf-fakalahi-ki he: 1; // fakalahi mei he 50% ki he 100% * --kf-fakalahi-mei he: 1; --kf-fakalahi-ki he: 0; // fakalahi mei he 100% ki he 0% * --kf-fakalahi-mei he: 1; --kf-fakalahi-ki he: 1.1; // fakalahi mei he 100% ki he 110% */

@ngaahi fakatātā tefito kf-fakalahi { mei he { me'afua: var (--kf-fakalahi-mei he, 0.8); } ki he { me'afua: var (--kf-fakalahi-ki he, 1); } }

'I he faka'uhinga 'e taha, 'e lava ke tau a'usia ha fa'ahinga kehekehe 'o e zoom 'oku tau fie ma'u: .tositi { moʻui: kf-faka'uli-'i he 0.2s, . kf-fakalahi 0.4s faingofua-ki tu'a; --kf-faka'ata-mei he: 0 100%; /* 'asi mei 'olunga */ /* Faka'aonga'i 'a e fakalahi 'o e default: ngaahi me'afua mei he 80% ki he 100% */ }

.founga { fakamo'ui: kf-fakalahi 0.3s kiupiki-pesi(0.34, 1.56, 0.64, 1); --kf-fakalahi-mei he: 0; /* fakalahi fakaofo mei he 0% ki he 100% */ }

.uluʻi tohi { moʻui: kf-mole-'i he 2s, . kf-fakalahi 2s faingofua-'i he; --kf-fakalahi-mei he: 1.2; --kf-fakalahi-ki he: 0.8; /* malimali 'a e me'afua ki lalo */ }

'Oku ngaue haohaoa 'a e default 'o e 0.8 (80%) ki he lahi taha 'o e ngaahi 'elemeniti 'o e UI, hange ko e ngaahi fekau toast mo e ngaahi kaati, lolotonga ia 'oku kei faingofua ke customize ki he ngaahi keisi makehe. Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 4 [forked] 'e Amit Sheen. Mahalo naʻá ke fakatokangaʻi ha meʻa mālie ʻi he ngaahi sīpinga kimuí ni maí: kuo mau fakatahaʻi ʻa e ngaahi fakatātā fakaʻata. Ko e taha ‘o e ngaahi lelei mahu’inga ‘o e ngaue mo e @keyframes tokens ko ‘enau fa’u ke fakataha’i ‘a e seamlessly mo e taha mo e taha. Ko e fa‘u malimali ko ení ‘oku fakataumu‘a ia, ‘o ‘ikai fakatu‘upakē. Te tau alea’i ‘a e fa’u ‘o e animation ‘i ha fakaikiiki ange ‘amui ange, kau ai ‘a e feitu’u ‘e lava ke nau hoko ai ‘o palopalema, ka ko e lahi taha ‘o e ngaahi fakataha’anga ‘oku hangatonu mo faingofua ke fakahoko. Fakatokanga'i ange: Lolotonga 'eku tohi 'a e fakamatala ko 'eni, pea mahalo koe'uhi ko 'eku tohi, Na'a ku 'ilo'i 'oku ou toe fakakaukau ki he fakakaukau kotoa 'o e ngaahi faka'ata 'o e hū'anga. 'I he ngaahi fakalakalaka kotoa pe kimui ni mai 'i he CSS, 'Oku tau kei fie ma'u kinautolu 'i ha me'a? Me'a lelei, na'e fakatotolo'i 'e Adam Argyle 'a e ngaahi fehu'i tatau pea fakahaa'i ngingila kinautolu 'i he'ene blog. ‘Oku ‘ikai ke fepaki ‘eni mo e me’a ‘oku tohi heni, ka ‘oku ne ‘omai ha founga ‘oku taau ke fakakaukau’i, tautautefito kapau ‘oku fakafalala lahi ho’o ngaahi poloseki ki he ngaahi faka’ata hū’anga. Ngaahi Fakaʻaliʻali Hokohoko Lolotonga e ngaahi fakaʻaliʻali ʻo e hūʻangá, hangē ko e “fade”, “slide”, mo e “zoom” ʻoku hoko tuʻo taha pea toki tuʻu, hokohoko atu ʻa e ngaahi fakaʻaliʻali ʻoku loop taʻefakangatangata ke tohoakiʻi ʻa e tokangá pe fakahaaʻi ʻa e ʻekitivitī hokohoko. Ko e ongo animations hokohoko angamaheni taha 'oku ou fetaulaki mo ia ko e “spin” (ki he ngaahi faka'ilonga 'o e uta) mo e “pulse” (ki hono faka'ilonga'i 'o e ngaahi 'elemeniti mahu'inga). 'Oku 'omi 'e he ngaahi animations ko 'eni 'a e ngaahi pole makehe 'i he taimi 'oku hoko mai ai ki hono fa'u 'o e ngaahi faka'ilonga keyframes. 'Oku kehe mei he ngaahi faka'ata 'o e hū'anga 'oku angamaheni 'aki 'a e 'alu mei he siteiti 'e taha ki he taha, 'Oku fie ma'u ke customizable lahi 'a e ngaahi faka'ata hokohoko 'i honau ngaahi founga 'ulungaanga. Ko e Toketā Spin . Hange 'oku faka'aonga'i 'e he poloseki kotoa pe 'a e ngaahi faka'ata spin lahi. ‘Oku vilo ‘a e ni‘ihi ‘o fakahangatonu ki he uati, ko e ni‘ihi ‘oku nau vilo fakafepaki ki he uati. ʻOku fai ʻe he niʻihi ha vilo tikilī ʻe 360 ​​ʻe taha, ʻoku fai ʻe he niʻihi ha ngaahi tafoki lahi ki ha ola vave ange. Kae ‘ikai ke fa’u ha ngaahi keyframes kehekehe ki he kehekehe takitaha, tau langa hake ha spin ‘e taha ‘oku ne tokanga’i ‘a e ngaahi tu’unga kotoa pe:

/* * Spin - faka'ata 'o e vilo * Faka'aonga'i 'a e --kf-spin-mei he --kf-spin-ki ke pule'i 'a e 'atakai 'o e vilo . * Faka'aonga'i 'a e --kf-spin-tafoki ke pule'i 'a e lahi 'o e vilo * Default: 'oku vilo mei he 0deg ki he 360deg (1 vilo kakato) * Ngaue'aki: * fakamo'ui: kf-spin 1s fakalaine ta'efakangatangata; * --kf-vilo-tafoki: 2; // 2 ngaahi fe'auhi kakato * --kf-vilo-mei he: 0deg; --kf-vilo-ki he: 180tiki; // vaeua 'o e vilo * --kf-vilo-mei he: 0deg; --kf-vilo-ki he: -360tiki; // fakafepaki ki he uati */

@ngaahi fakatātā tefito kf-spin { mei he { vilo: var (--kf-vilo-mei he, 0deg); } ki he { vilo: calc (var (--kf-vilo-mei he, 0deg) + var (--kf-vilo-ki, 360deg) * var (--kf-vilo-tafoki, 1)); } }

Ko 'eni 'e lava ke tau fa'u ha fa'ahinga kehekehe 'o e spin 'oku tau sai'ia ai:

.uta-vilo { fakamo'ui: kf-spin 1s fakalaine ta'efakangatangata; /* Faka'aonga'i 'a e default: 'oku vilo mei he 0deg ki he 360deg */ }

.vave-uta { mo'ui: kf-spin 1.2s faingofua-'i-tu'a 'a e fetongi ta'efakangatangata; --kf-vilo-tafoki: 3; /* 3 rotations kakato ki he fakahinohino takitaha 'i he siakale .*/ }

.sitepu-fakafoki { fakamo'ui: kf-spin 1.5s sitepu(8) ta'efakangatangata; --kf-vilo-ki he: -360tiki; /* fakafepaki ki he uati */ }

.fakapulipuli-wiggle { mo'ui: kf-spin 2s faingofua-'i-tu'a 'a e fetongi ta'efakangatangata; --kf-vilo-mei he: -16deg; --kf-vilo-ki he: 32deg; /* wiggle 36 tikili: 'i he vaha'a 'o e -18tiki mo e +18 tikili */ }

Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 5 [forked] 'e Amit Sheen. Ko e faka'ofo'ofa 'o e founga ko 'eni ko e keyframes tatau 'oku ngaue ki he uta 'o e spinners, ngaahi faka'ilonga 'o e vilo, ngaahi ola 'o e wiggle, pea na'a mo e ngaahi faka'ata faingata'a 'o e ngaahi tafoki lahi. Ko e Fakafepaki ʻo e Pulse . 'Oku trickier 'a e ngaahi faka'ata 'o e pulse koe'uhi he 'e lava ke nau "pulse" 'a e ngaahi koloa kehekehe. 'Oku pulse 'e he ni'ihi 'a e me'afua, pulse 'a e ni'ihi 'a e opacity, pea mo e ngaahi koloa lanu pulse 'e ni'ihi hange ko e ngingila pe saturation. Kae 'ikai ko hono fa'u 'o e ngaahi keyframes kehekehe ki he koloa takitaha, 'e lava ke tau fa'u 'a e ngaahi keyframes 'oku ngaue mo ha koloa CSS. Ko e fakatātā 'eni 'o ha keyframe pulse mo e ngaahi fili 'o e fua mo e opacity:

/* * Pulse - faka'ata 'o e pulsing * Faka'aonga'i 'a e --kf-pulse-me'afua-mei he --kf-pulse-me'afua-ki ke pule'i 'a e 'atakai 'o e me'afua . * Faka'aonga'i 'a e --kf-pulse-opacity-mei he --kf-pulse-'opacity-ki ke pule'i 'a e opacity 'o e 'atakai * Faka'aonga'i: 'ikai ha pulse (ngaahi mahu'inga kotoa pe 1) * Ngaue'aki: * mo'ui: kf-pulse 2s faingofua-'i-tu'a fetongi ta'efakangatangata; * --kf-pulse-me'afua-mei he: 0.95; --kf-pulse-me'afua-ki he: 1.05; // fua pulse * --kf-pulse-'o e 'ata-mei he: 0.7; --kf-pulse-'o e 'ata-ki he: 1; // pulse 'o e opacity */

@ngaahi fakatātā mahuʻinga kf-pulse { mei he { me'afua: var (--kf-pulse-me'afua-mei he, 1); 'ikai ke 'asi: var (--kf-pulse-'ikai ke 'asi-mei he, 1); } ki he { me'afua: var (--kf-pulse-me'afua-ki he, 1); 'ikai ke 'asi: var (--kf-pulse-'ikai ke 'asi-ki he, 1); } }

'Oku fakatupu 'e he me'a ni ha pulse 'oku lava ke ne animate 'a e ngaahi koloa lahi: .ui-ki-he-ngaue { fakamo'ui: kf-pulse 0.6s fetongi ta'efakangatangata; --kf-pulse-'o e 'ata-mei he: 0.5; /* pulse 'o e opacity */ }

.fakatokanga-toti { mo'ui: kf-pulse 0.6s faingofua-'i-tu'a fetongi ta'efakangatangata; --kf-pulse-me'afua-mei he: 0.9; --kf-pulse-me'afua-ki he: 1.1; /* fua 'o e pulse */ }

.tohi-faka'ilonga { mo'ui: kf-pulse 1.5s faingofua-'i tu'a ta'efakangatangata; --kf-pulse-me'afua-mei he: 0.8; --kf-pulse-'o e 'ata-mei he: 0.2; /* me'afua mo e pulse opacity */ }

Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 6 [forked] 'e Amit Sheen. 'E lava ke tokanga'i 'e he keyframe kf-pulse 'e taha ko 'eni 'a e me'a kotoa pe mei he tokanga fakapulipuli 'oku puke ki he ngaahi me'a mahu'inga fakaofo, kotoa lolotonga 'oku faingofua ke customize. Fakafaingofua'i Fakalakalaka Ko e taha 'o e ngaahi me'a lalahi fekau'aki mo hono faka'aonga'i 'o e ngaahi faka'ilonga keyframes ko e founga faingofua ke fakalahi 'etau laipeli 'o e mo'ui mo 'omi 'a e ngaahi ola 'e 'ikai ke bother 'a e tokolahi taha 'o e kau developers ke tohi mei he kamata'anga, hange ko e elastic pe bounce. Ko ha fakatātā ʻeni ʻo ha fakaʻilonga keyframes faingofua “bounce” ʻoku ne fakaʻaongaʻi ha --kf-bounce-mei he koloa angamaheni ke puleʻi ʻa e maʻolunga ʻo e puna. /* * Bounce - faka'ata 'o e hū'anga 'oku puna * Faka'aonga'i 'a e --kf-bounce-mei ke pule'i 'a e ma'olunga 'o e puna * Faka'aonga'i: puna mei he 100vh ('o e screen) * Ngaue'aki: * fakamo'ui: kf-puna 3s faingofua-'i; * --kf-puna-mei he: 200px; // puna mei he 200px ma'olunga */

@ngaahi fakatātā mahuʻinga kf-puna { 0% { liliu: 0 fakafuofua (var (--kf-puna-mei he, 100vh) * -1); }

34% { liliu: 0 kalasi (var (--kf-puna-mei he, 100vh) * -0.4); }

55% { liliu: 0 fakafuofua (var (--kf-puna-mei he, 100vh) * -0.2); }

72% { liliu: 0 kalasi (var (--kf-puna-mei he, 100vh) * -0.1); }

85% { liliu: 0 kalasi (var (-- kf-puna-mei he, 100vh) * -0.05); }

94% { liliu: 0 kalasi (var (--kf-puna-mei he, 100vh) * -0.025); }

99% { liliu: 0 kalasi (var (-- kf-puna-mei he, 100vh) * -0.0125); }

22%, 45%, 64%, 79%, 90%, 97%, 100% { liliu: 0 0; animation-taimi-ngaue: faingofua-ki tu'a; } }

'Oku ki'i trickier 'a e ngaahi faka'ata hange ko e “elastic” koe'uhi ko e ngaahi fakafuofua 'i loto 'i he ngaahi keyframes. 'Oku fie ma'u ke tau faka'uhinga'i 'a e --kf-elastic-mei he-X mo e --kf-elastic-mei he-Y kehekehe ('oku fakatou fili), pea fakataha 'oku nau tuku ke tau fa'u ha hū'anga 'o e elastic mei ha fa'ahinga poini 'i he screen.

/* * Elastic 'I he - 'elasitiki 'o e hū'anga 'o e mo'ui * Faka'aonga'i 'a e --kf-'elastic-mei he-X mo e --kf-'elastic-mei he-Y ke pule'i 'a e tu'unga kamata . * Faka'aonga'i: 'oku hū mei he lotolotonga 'i 'olunga (0, -100vh) * Ngaue'aki: * mo'ui: kf-'elastic-'i he 2s faingofua-'i-tu'a fakatou'osi; * --kf-'elasitiki-mei he-X: -50px; * --kf-'elasitiki-mei he-Y: -200px; // fakahu mei he (-50px, -200px) */

@ngaahi fakatātā mahuʻinga kf-ʻelasitiki-ʻi { 0% { liliu: fakafuofua (var (--kf-'elasitiki-mei he-X, -50vw) * 1) fakafuofua (var (--kf-'elasitiki-mei he-Y, 0px) * 1); }

16% { liliu: fakafuofua (var (--kf-'elasitiki-mei he-X, -50v) * -0.3227) fakafuofua (var (--kf-'elasitiki-mei he-Y, 0px) * -0.3227); }

28% { liliu: fika'i (var (--kf-'elasitiki-mei he-X, -50vw) * 0.1312)fika (var (--kf-'elasitiki-mei he-Y, 0px) * 0.1312); }

44% { liliu: fakafuofua (var (--kf-'elasitiki-mei he-X, -50vw) * -0.0463) fakafuofua (var (--kf-'elasitiki-mei he-Y, 0px) * -0.0463); }

59% { liliu: fakafuofua (var (--kf-'elasitiki-mei he-X, -50vw) * 0.0164) fakafuofua (var (--kf-'elasitiki-mei he-Y, 0px) * 0.0164); }

73% { liliu: fakafuofua (var (--kf-'elasitiki-mei he-X, -50v) * -0.0058) fakafuofua (var (--kf-'elasitiki-mei he-Y, 0px) * -0.0058); }

88% { liliu: fakafuofua (var (--kf-'elasitiki-mei he-X, -50vw) * 0.0020) fakafuofua (var (--kf-'elasitiki-mei he-Y, 0px) * 0.0020); }

100% { liliu: 0 0; } }

'Oku hanga 'e he founga ko 'eni 'o fakafaingofua'i ke toe faka'aonga'i mo customize 'a e ngaahi keyframes fakalakalaka 'i he kotoa 'o 'etau poloseki, 'aki pe hono liliu 'o ha koloa angamaheni 'e taha.

.puna-mo-fakalahi { moʻui: kf-puna 3s faingofua-'i, . kf-fakalahi 3s fakalaine; --kf-fakalahi-mei he: 0; }

.puna-mo-'alu { animation-fa'u: tanaki atu; /* Fakatou'osi 'a e ongo animations 'oku na faka'aonga'i 'a e liliu */ moʻui: kf-puna 3s faingofua-'i, . kf-'asi-'i 3s faingofua-'i tu'a; --kf-'ata-mei he: -200px; }

.elasitiki-'i { mo'ui: kf-'elastic-'i 2s faingofua-'i-tu'a fakatou'osi; }

Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 7 [forked] 'e Amit Sheen. ‘O a’u mai ki he taimi ni, kuo tau sio ki he founga te tau lava ai ‘o fakatahataha’i ‘a e ngaahi keyframes ‘i ha founga ‘atamai poto mo ola lelei. Ko e mo’oni, mahalo te ke fie tweak ‘a e ngaahi me’a ke fe’unga lelei ange mo ho’o ngaahi fie ma’u ‘a e poloseki, ka kuo mau ‘ufi’ufi ‘a e ngaahi fakatātā ‘o ha ngaahi animations angamaheni mo e ngaahi keisi ‘o hono faka’aonga’i faka’aho. Pea 'i he ngaahi faka'ilonga keyframes ko 'eni 'i he feitu'u, 'Oku tau ma'u he taimi ni 'a e ngaahi poloka langa malohi ki hono fa'u 'o e ngaahi faka'ata tu'uma'u, tauhi 'i he poloseki kotoa. 'Ikai toe 'i ai ha ngaahi keyframes 'oku toe 'i ai, 'ikai toe 'i ai ha ngaahi fepakipaki 'o e scope fakamamani lahi. Ko ha founga ma'a pe, faingofua ke tokanga'i 'etau ngaahi fie ma'u kotoa pe 'o e animation. Ka ko e fehuʻi moʻoní: ʻOku anga fēfē ʻetau faʻu fakataha ʻa e ngaahi poloka langa ko ʻení? Ko hono Fakatahatahaʻi Kotoa . Kuo tau sio ki hono fakataha’i ‘o e ngaahi faka’ilonga keyframes tefito ‘oku faingofua. ‘Oku ‘ikai ke tau fiema’u ha me’a makehe ka ko hono faka’uhinga’i ‘o e ‘uluaki animation, faka’uhinga’i ‘a e ua, seti ‘a e ngaahi variables ‘o fakatatau ki he fiema’u, pea ko ia pe. /* Fade 'i + 'asi 'i */ .tositi { moʻui: kf-mole-'i he 0.4s, kf-faka'uli-'i he 0.4s kiupiki-pesi(0.34, 1.56, 0.64, 1); --kf-faka'ali'ali-mei he: 0 40px; }

/* Fakalahi + faka'auha */ .founga { moʻui: kf-mole-'i he 0.3s, . kf-fakalahi 0.3s kiupiki-pesi (0.34, 1.56, 0.64, 1); --kf-fakalahi-mei he: 0.7; --kf-fakalahi-ki he: 1; }

/* Faka'uli 'i + pulse */ .fakatokanga { moʻui: kf-'asi-'i he 0.5s, . kf-pulse 1.2s faingofua-'i-tu'a fetongi ta'efakangatangata; --kf-faka'ali'ali-mei he: -100px 0; --kf-pulse-me'afua-mei he: 0.95; --kf-pulse-me'afua-ki he: 1.05; }

'Oku ngaue faka'ofo'ofa 'a e ngaahi fakataha'anga ko 'eni koe'uhi 'oku fakataumu'a 'a e animation takitaha ki ha koloa kehekehe: opacity, liliu (liliu/fua), etc. Ka 'i he taimi 'e ni'ihi 'oku 'i ai ha ngaahi fepakipaki, pea 'oku fie ma'u ke tau 'ilo'i 'a e 'uhinga mo e founga ke fehangahangai ai mo kinautolu. 'I he taimi 'oku feinga ai ha ongo animations ke animate 'a e koloa tatau — hange ko 'eni, fakatou'osi 'a e me'afua animating pe fakatou animating opacity — 'e 'ikai ko e ola 'a e me'a 'oku ke 'amanaki ki ai. 'I he default, ko e taha pe 'o e ngaahi faka'ata 'oku faka'aonga'i mo'oni ki he koloa ko ia, 'a ia ko e taha fakamuimuitaha 'i he lisi 'o e ngaahi faka'ata. Ko ha fakangatangata 'eni 'o e founga 'oku tokanga'i ai 'e he CSS 'a e ngaahi faka'ata lahi 'i he koloa tatau. Hange ko 'eni, 'e 'ikai ngaue 'eni 'o hange ko ia na'e fakataumu'a ki ai koe'uhi ko e kf-pulse animation pe 'e ngaue. .kovi-fakataha { moʻui: kf-fakalahi 0.5s ki mu'a, . kf-pulse 1.2s fetongi ta'efakangatangata; --kf-fakalahi-mei he: 0.5; --kf-fakalahi-ki he: 1.2; --kf-pulse-me'afua-mei he: 0.8; --kf-pulse-me'afua-ki he: 1.1; }

Tānaki ʻo e ʻAnimāsiá Ko e founga faingofua mo fakahangatonu taha ke tokanga'i 'a e ngaahi animations lahi 'oku ne uesia 'a e koloa tatau ko hono faka'aonga'i 'o e koloa 'o e animation-composition. 'I he sipinga fakamuimuitaha 'i 'olunga, 'oku fetongi 'e he kf-pulse 'a e mo'ui 'a e kf-zoom mo'ui, ko ia 'e 'ikai ke tau sio ki he 'uluaki zoom pea 'e 'ikai ke ma'u 'a e me'afua 'oku 'amanaki ke 'o e 1.2. 'I hono fokotu'u 'o e animation-fa'u ke tanaki atu, 'Oku tau talaange ki he browser ke fakataha'i 'a e ongo animation. ʻOku ʻomi ʻe he meʻá ni ʻa e ola ʻoku tau fie maʻú. .konga-ua { animation-fa'u: tanaki atu; }

Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 8 [forked] 'e Amit Sheen. 'Oku ngaue lelei 'a e founga ko 'eni ki he lahi taha 'o e ngaahi keisi 'oku tau fie fakataha'i ai 'a e ngaahi ola 'i he koloa tatau. 'Oku 'aonga foki ia 'i he taimi 'oku tau fie ma'u ai ke fakataha'i 'a e ngaahi animations mo e ngaahi mahu'inga 'o e koloa static. Hange ko 'eni, kapau 'oku tau ma'u ha 'elemeniti 'oku ne faka'aonga'i 'a e koloa 'o e liliu ke fokotu'u ia 'i he feitu'u tonu 'oku tau fie ma'u, pea 'oku tau fie ma'u leva ke fakamo'ui ia 'i he kf-slide-'i he keyframes, 'Oku tau ma'u ha puna 'oku 'asi fakalielia 'o 'ikai ha fakamo'ui-fa'u. Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 9 [forked] 'e Amit Sheen. 'I he seti 'o e animation-fa'u ke tanaki atu, 'oku fakataha'i lelei 'a e animation mo e 'oku 'i ai .liliu, ko ia 'oku nofo 'a e 'elemeniti 'i hono feitu'u pea animates 'o hange ko ia 'oku 'amanaki ki ai. Faka'ata 'o e mo'ui Ko e founga ʻe taha ʻo hono tokangaʻi ʻo e ngaahi ʻata lahi ko e “stagger” kinautolu — ʻa ia, kamata ʻa e ʻata hono ua ʻi ha kiʻi hili ʻa e ʻosi ʻa e ʻuluaki taha. 'Oku 'ikai ko ha fakalelei'anga ia 'oku ngaue ki he keisi kotoa pe, ka 'oku 'aonga ia 'i he taimi 'oku tau ma'u ai ha animation hū'anga pea muimui 'i ha animation hokohoko. /* mole 'i he + pulse opacity */ .fakatokanga { moʻui: kf-fade-'i 2s faingofua-'i tu'a, . kf-pulse 0.5s 2s faingofua-'i-tu'a 'a e fetongi ta'efakangatangata; --kf-pulse-'o e 'ata-ki he: 0.5; }

Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 10 [forked] 'e Amit Sheen. Ngaahi Me'a 'o e 'Ota Ko ha konga lahi 'o e ngaahi animations 'oku tau ngaue mo ia 'oku nau faka'aonga'i 'a e koloa 'o e liliu. ‘I he ngaahi tu‘unga lahi tahá, ‘oku faingofua ange pē eni. 'Oku 'i ai foki mo ha lelei 'o e fakahoko 'o hange ko e liliu 'o e ngaahi faka'ata 'e lava ke GPU-fakavave'i. Ka ʻo kapau te tau fakaʻaongaʻi ʻa e ngaahi liliú, ʻoku fie maʻu ke tau tali ʻoku mahuʻinga ʻa e hokohoko ʻo ʻetau fakahoko ʻetau ngaahi liliú. Lahi. ‘I he’etau ngaahi keyframes ‘o a’u mai ki he taimi ni, kuo tau ngaue’aki ‘a e ngaahi liliu fakafo’ituitui. Fakatatau ki he specs, 'oku faka'aonga'i ma'u pe 'a e ngaahi me'a ni 'i ha hokohoko pau: 'uluaki, 'oku ma'u 'e he 'elemeniti 'a e liliu, pea vilo, pea fua. ‘Oku ‘uhinga lelei eni pea ko e me‘a ia ‘oku ‘amanekina ‘e he tokolahi taha ‘o kitautolú. Ka neongo ia, kapau te tau faka'aonga'i 'a e koloa 'o e transform, ko e hokohoko 'oku tohi'i ai 'a e ngaahi ngaue ko e hokohoko ia 'oku nau faka'aonga'i ai. ‘I he tu‘unga ko ení, kapau te tau hiki ha me‘a ‘oku pixels ‘e 100 ‘i he X-axis pea toki vilo ia ‘aki ‘a e tikilī ‘e 45, ‘oku ‘ikai tatau ia mo hono ‘uluaki vilo‘i ia ‘aki ‘a e tikilī ‘e 45 pea toki hiki ‘aki ‘a e tikilī ‘e 100. /* Sikuea lanu pingikī: 'Uluakí liliu, pea vilo */ .fakatata-taha { liliu: liliuX (100px) vilo (45deg); }

/* Sikuea lanumata: 'Uluaki vilo, pea liliu */ .fakatātā-ua { liliu: vilo (45deg) liliuX (100px); }

Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e Peni - Faka'ali'ali 11 [forked] 'e Amit Sheen. Ka ‘o fakatatau ki he tu’utu’uni ‘o e liliu, ‘oku hoko ‘a e ngaahi liliu fakafo’ituitui kotoa pe — ‘a e me’a kotoa pe kuo tau faka’aonga’i ki he ngaahi faka’ilonga keyframes — kimu’a pea toki fai ‘a e ngaahi ngaue ‘o e liliu. Ko hono 'uhinga ko ha me'a pe 'oku ke seti 'i he koloa 'o e liliu 'e hoko ia hili 'a e ngaahi faka'ata. Ka 'o kapau te ke seti, hange ko 'eni, liliu fakataha mo e kf-spin keyframes, 'e hoko 'a e liliu kimu'a 'i he animation. Puputu'u 'oku te'eki?! 'Oku taki 'eni ki he ngaahi tu'unga 'e lava ke fakatupu 'e he ngaahi mahu'inga static 'a e ngaahi ola kehekehe ki he animation tatau, hange ko e me'a ko 'eni:

/* Fakamo'ui angamaheni ki he ongo spinners */ .vilo { fakamo'ui: kf-spin 1s fakalaine ta'efakangatangata; }

/* Pink spinner: liliu kimu'a pea toki vilo (liliu fakafo'ituitui) */ .spinner-lanu pingikī { liliu: 100% 50%; }

/* Spinner lanumata: vilo pea liliu (fakahokohoko 'o e ngaue) */ .spinner-lanumata { liliu: liliu(100%, 50%); }

Vakai ki he ngaahi faka'ilonga 'o e ngaahi faka'ilonga 'o e peni - Faka'ali'ali 12 [forked] 'e Amit Sheen. 'E lava ke ke sio ki he 'uluaki spinner (pink) 'oku ne ma'u ha liliu 'oku hoko kimu'a pea toki rotate 'a e kf-spin, ko ia 'oku ne 'uluaki hiki ki hono feitu'u pea toki spin. 'Oku ma'u 'e he spinner hono ua (lanumata) ha liliu() ngaue 'oku hoko hili 'a e liliu fakafo'ituitui, ko ia 'oku 'uluaki spins 'a e 'elemeniti, pea 'oku nga'unu 'o fakatatau ki hono tuliki lolotonga, pea 'oku tau ma'u 'a e ola 'o e 'atakai lahi ko ia. ‘Ikai, ‘oku ‘ikai ko ha bug eni. Ko e taha pe ia 'o e ngaahi me'a 'oku fie ma'u ke tau 'ilo fekau'aki mo e CSS pea tauhi 'i he 'atamai 'i he taimi 'oku ngaue ai mo e ngaahi faka'ata lahi pe ngaahi liliu lahi. Kapau 'oku fie ma'u, 'e lava foki ke ke fa'u ha seti 'o e kf-spin-alt keyframes 'oku nau fakafetongi 'a e ngaahi 'elemeniti 'o faka'aonga'i 'a e rotate() ngaue. Fakasi'isi'i 'a e Ngaue Pea lolotonga ‘etau talanoa ki he ngaahi keyframes kehe, ‘oku ‘ikai lava ke tau tukunoa’i ‘a e “no animation” fili. Ko e taha 'o e ngaahi lelei lahi taha 'o hono faka'aonga'i 'o e ngaahi faka'ilonga keyframes ko e accessibility 'e lava ke ta'o 'i, pea ko hono mo'oni 'oku faingofua 'aupito ke fai. 'I hono tisaini 'etau keyframes mo e accessibility 'i he 'atamai, 'e lava ke tau fakapapau'i 'oku ma'u 'e he kau faka'aonga'i 'oku nau sai'ia ange 'i he fakasi'isi'i 'o e ngaue ha a'usia 'oku malimali ange, si'isi'i ange 'a e fakahoha'a, 'o 'ikai ha ngaue lahi ange pe code duplication. Ko e 'uhinga totonu 'o e “Reduced Motion” 'e lava ke liliu ha ki'i me'a mei he animation 'e taha ki he taha, pea mei he poloseki ki he poloseki, ka ko e ngaahi poini mahu'inga 'eni ke tauhi 'i he 'atamai: Fakalongolongo 'o e ngaahi fakatātā mahu'inga Lolotonga ʻe lava ke fakamolū pe fakamāmālieʻi ha ngaahi fakatātā ʻe niʻihi, ʻoku ʻi ai ha ngaahi ʻata kehe ʻoku totonu ke mole fakaʻaufuli ʻi he taimi ʻoku kole ai ke fakasiʻisiʻi ʻa e ngaʻunu. Ko e ngaahi fakatātā pulse ko ha sīpinga lelei ia. Ke fakapapau'i 'oku 'ikai lele 'a e ngaahi faka'ata ko 'eni 'i he founga fakasi'isi'i 'o e ngaue, 'e lava ke tau takai'i pe kinautolu 'i he fehu'i totonu 'o e mitia.

@media (fiefia-fakasi'isi'i-ngaue: 'ikai-fiefia) { @ kf-pulse { mei he { me'afua: var (--kf-pulse-me'afua-mei he, 1); 'ikai ke 'asi: var (--kf-pulse-'ikai ke 'asi-mei he, 1); } ki he { me'afua: var (--kf-pulse-me'afua-ki he, 1); opacity:var (--kf-pulse-'o e 'ata-ki he, 1); } } }

'Oku fakapapau'i 'e he me'a ni 'a e kau faka'aonga'i kuo nau seti 'a e prefers-fakasi'isi'i-ngaue ke fakasi'isi'i 'e 'ikai ke nau sio ki he animation pea te nau ma'u ha a'usia 'oku fe'unga mo 'enau manako. 'I he taimi pe ko ia 'Oku 'i ai ha ngaahi keyframes 'oku 'ikai ke tau lava 'o to'o noa'ia, hange ko e ngaahi faka'ata 'o e hū'anga. Kuo pau ke liliu ʻa e mahuʻingá, kuo pau ke fakamoʻui; ka 'ikai, 'e 'ikai ke ma'u 'e he 'elemeniti 'a e ngaahi mahu'inga totonu. Ka ʻi he fakasiʻisiʻi ʻo e ngaʻunu, ʻoku totonu ke vave ʻa e liliu ko ʻeni mei he ʻuluaki mahuʻingá. Ke a’usia ‘eni, te tau faka’uhinga’i ha seti ‘e taha ‘o e ngaahi keyframes ‘a ia ‘oku puna ai ‘a e mahu’inga ‘i he taimi pe ko ia ki he tu’unga faka’osi. ʻOku hoko ʻeni ko ʻetau ngaahi keyframe default. Pea, te tau tanaki atu ‘a e ngaahi keyframes angamaheni ‘i loto ‘i ha fehu’i ‘a e mitia ki he manakoa-fakasi’isi’i-ngaue ‘oku fokotu’u ki he ‘ikai ha manakoa, ‘o hange pe ko e sipinga kimu’a. /* pop 'i he taimi pe ko ia ki he fakasi'isi'i 'o e ngaue */ @ngaahi fakatātā tefito kf-fakalahi { mei, ki he { . me'afua: var (--kf-fakalahi-ki he, 1); } }

@media (fiefia-fakasi'isi'i-ngaue: 'ikai-fiefia) { /* Ngaahi fakatātā mahuʻinga ʻo e zoom ʻuluaki */ @ngaahi fakatātā tefito kf-fakalahi { mei he { me'afua: var (--kf-fakalahi-mei he, 0.8); } ki he { me'afua: var (--kf-fakalahi-ki he, 1); } } }

Ko e founga ko 'eni, 'e sio 'a e kau faka'aonga'i 'oku nau sai'ia ange 'i he fakasi'isi'i 'o e ngaue 'a e 'elemeniti 'oku 'asi mai 'i he taimi pe ko ia 'i hono tu'unga faka'osi, lolotonga ia 'oku ma'u 'e he tokotaha kotoa pe 'a e liliu 'o e animated. Ko e Founga Molū . 'Oku 'i ai ha ngaahi keisi 'oku tau fie ma'u ke tauhi ha ngaue, ka 'oku lahi ange 'a e molumalu mo e nonga ange 'i he 'uluaki animation. Hangē ko ʻení, te tau lava ʻo fetongi ha hūʻanga ʻoku puna ʻaki ha fade-in malimali.

@ngaahi fakatātā mahuʻinga kf-puna { /* Fade-in molumalu ki he fakasi'isi'i 'o e ngaue */ }

@media (fiefia-fakasi'isi'i-ngaue: 'ikai-fiefia) { @ngaahi fakatātā mahuʻinga kf-puna { /* Ngaahi fakatātā mahuʻinga ʻo e bounce ʻuluaki */ } }

Ko 'eni, 'Oku kei ma'u 'e he kau faka'aonga'i 'o e fakasi'isi'i 'o e ngaue 'oku faka'ata ha ongo 'o e fōtunga, ka 'oku 'ikai ha ngaue malohi 'o ha bounce pe elastic animation. ʻI he ʻi ai ʻa e ngaahi poloka langa, ko e fehuʻi hono hokó ko e founga ke nau hoko ai ko ha konga ʻo e founga ngāue moʻoní. Ko hono tohi 'o e ngaahi keyframes 'oku fe'unga ko e me'a 'e taha, ka ko hono ngaohi kinautolu ke falala'anga 'i he tafa'aki 'o ha poloseki lahi 'oku fie ma'u ha ngaahi founga ngaue si'isi'i na'e pau ke u ako 'a e founga faingata'a. Ngaahi Founga Fakahoko & Ngaahi Founga Lelei Taha Ko e taimi pe 'oku tau ma'u ai ha laipeli fefeka 'o e ngaahi faka'ilonga keyframes, ko e pole mo'oni ko e founga ke 'omi kinautolu ki he ngaue faka'aho.

Ko e fakahehema ke tuku hifo ʻa e ngaahi keyframe kotoa pē ʻi he taimi pē ʻe taha pea fakahā kuo solova ʻa e palopalemá, ka ʻi hono fakahokó kuó u ʻiloʻi ʻoku maʻu ʻa e ola lelei tahá mei hono ohi fakautuutu. Kamata ʻaki ʻa e ngaahi fakaʻaliʻali angamaheni tahá, hangē ko e fade pe slide. Ko e ngaahi ikuna faingofua 'eni 'oku ne fakahaa'i 'a e mahu'inga vave 'o 'ikai fie ma'u ha ngaahi rewrites lalahi. Ko e fakahingoá ko ha poini ia ‘e taha ‘oku taau ke fai ha tokanga ki ai. Ko ha prefix tu'uma'u pe namespace 'oku ne 'ai ke mahino pe ko e fē 'a e ngaahi faka'ata 'oku faka'ilonga pea ko e fē 'oku fakalotofonua 'a e taha-'offs. 'Oku ne ta'ofi foki 'a e fepakipaki fakatu'upakee pea tokoni'i 'a e kau mēmipa fo'ou 'o e timi ke nau 'ilo'i 'a e sisitemi vahevahe 'i ha sio pe. Ko e ngaahi tohi fakapepa 'oku mahu'inga tatau pe ia mo e code 'iate ia pe. Na'a mo ha fakamatala nounou 'i 'olunga 'i he faka'ilonga keyframes takitaha 'e lava ke fakahaofi 'a e ngaahi houa 'o e mate'i 'amui ange. 'Oku totonu ke lava 'e ha developer 'o fakaava 'a e faile 'o e ngaahi faka'ilonga, scan ki he ola 'oku nau fie ma'u, pea hiki tatau 'a e founga 'o hono faka'aonga'i hangatonu ki honau konga. Ko e fe‘unu‘akí ‘a e me‘a ‘okú ne ‘ai ‘a e founga ko ení ke taau ‘a e feingá. 'I hono fakahaa'i 'o e ngaahi koloa angamaheni 'atamai lelei, 'Oku tau 'oatu 'a e ngaahi timi 'a e loki ke nau fakafe'unga'i 'a e animation 'o 'ikai maumau'i 'a e sisitemi. ‘I he taimi tatau, feinga ke ‘oua ‘e fu‘u fakafaingata‘a‘ia‘i. ʻOatu ʻa e ngaahi knobs ʻoku mahuʻingá pea tauhi ʻa e toengá ke nau fakakaukau. Fakaʻosí, manatuʻi ʻa e lava ke maʻú. 'Oku 'ikai fie ma'u 'e he animation kotoa pe ha founga kehe 'o e ngaue fakasi'isi'i, ka 'oku tokolahi. Ko e ta'o 'i he ngaahi fakatonutonu ko 'eni 'i he kamata'anga 'oku 'uhinga ia 'oku 'ikai ke tau teitei retrofit kinautolu 'amui ange, pea 'oku ne fakahaa'i ha tu'unga 'o e tokanga 'e fakatokanga'i 'e he'etau kau faka'aonga'i neongo 'oku 'ikai ke nau teitei lave ki ai.

'I he'eku a'usia, faito'o 'a e ngaahi faka'ilonga keyframes ko e konga 'o 'etau ngaahi faka'ilonga tisaini workflow ko e me'a ia 'oku ne 'ai ke nau piki. Ko ʻenau ʻi he feituʻú pē, ʻoku ʻikai ke nau toe ongoʻi ʻo hangē ha ngaahi ola makehé pea hoko ko ha konga ʻo e lea tisaini, ko ha fakalahi fakanatula ʻo e founga ʻoku ngaʻunu mo tali ai ʻa e koloá. Ko hono takai'i 'E lava ke hoko 'a e ngaahi faka'ata ko e taha 'o e ngaahi konga fakafiefia taha 'o e langa 'o e ngaahi interfaces, ka 'i he 'ikai ha fokotu'utu'u, 'e lava ke nau hoko foki ko e taha 'o e ngaahi ma'u'anga tokoni lahi taha 'o e loto-mamahi. 'I hono tokanga'i 'o e keyframes ko e ngaahi faka'ilonga, 'Oku ke to'o ha me'a 'oku fa'a messy mo faingata'a ke pule'i pea liliu ia ki ha sisitemi mahino, 'oku lava ke tomu'a tala. Ko e mahuʻinga moʻoní ʻoku ʻikai ko hono fakahaofi pē ha ngaahi laine siʻisiʻi ʻo e kouti. ʻOku ʻi he falala ʻi he taimi ʻokú ke fakaʻaongaʻi ai ha fade, slide, zoom, pe spin, ʻokú ke ʻiloʻi pau ʻa e founga ʻe ʻulungaanga ʻaki ʻi he poloseki kotoa. 'Oku 'i he fe'unu'aki 'oku ha'u mei he ngaahi koloa angamaheni 'o 'ikai ha moveuveu 'o e ngaahi kehekehe ta'e ngata. Pea 'oku 'i he accessibility 'oku langa ki he fakava'e kae 'ikai ke tanaki atu ko e .ko ha fakakaukau hili iá. Kuó u sio ki he ngaahi fakakaukau ko ʻení ʻoku ngāue ʻi ha ngaahi timi kehekehe mo ha ngaahi codebases kehekehe, pea ʻoku tatau maʻu pē ʻa e sīpingá. Ko e taimi pe 'oku 'i ai ai 'a e ngaahi faka'ilonga, 'oku tuku 'a e keyframes ko ha tanaki'anga movetevete 'o e ngaahi founga fakapotopoto pea hoko ko ha konga 'o e lea tisaini. ʻOku nau ʻai ʻa e koloá ke ongoʻi fakataumuʻa ange, tuʻumaʻu ange, mo moʻui ange. Kapau te ke to'o ha me'a 'e taha mei he fakamatala ko 'eni, tuku ke hoko ia ko 'eni: 'oku taau mo e ngaahi faka'ata 'a e tokanga mo e fokotu'utu'u tatau 'oku tau 'osi 'oatu ki he ngaahi lanu, taipe, mo e spacing. Ko ha ki'i 'inivesi 'i he ngaahi faka'ilonga keyframes 'oku totongi 'i he taimi kotoa pe 'oku nga'unu ai ho'o interface.

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free