Tsis ntev los no kuv tau hloov kho cov duab animated ntawm kuv lub vev xaib nrog lub ntsiab lus tshiab thiab ib pab pawg ntawm cov neeg ua yeeb yam, ua rau kev xyaum ntau yam uas kuv tau qhia hauv cov koob no. Ob peb ntawm kuv cov animations hloov qhov tsos thaum ib tug neeg cuam tshuam nrog lawv los yog sib txawv ntawm hnub.

Cov xim hauv daim duab saum kuv cov nplooj ntawv blog hloov thaum sawv ntxov mus txog hmo ntuj txhua hnub. Tom qab ntawd, muaj hom daus, uas ntxiv cov xim txias thiab lub ntsiab lus caij ntuj no, zoo siab ntawm txheej txheej txheej thiab kev sib xyaw ua ke.

Thaum ua hauj lwm rau qhov no, kuv pib xav seb puas yog CSS txheeb ze cov xim muaj nuj nqis tuaj yeem ua rau kuv tswj tau ntau dua thaum tseem ua kom cov txheej txheem yooj yim dua. Nco tseg: Hauv qhov kev qhia no, kuv yuav tsom mus rau cov txiaj ntsig ntawm cov xim sib txawv thiab OKLCH xim qhov chaw rau lawv cov duab thiab cov duab. Yog tias koj xav dhia tob rau hauv cov xim txheeb ze, Ahmad Shadeed tsim cov lus qhia zoo heev. Raws li qhov chaw xim, gamuts, thiab OKLCH, peb tus kheej Geoff Graham tau sau txog lawv.

Rov qab siv cov ntsiab lus tseem ceeb. Cov keeb kwm yav dhau tau rov qab siv tau thaum twg los tau, nrog zooms thiab overlays pab tsim cov scenes tshiab los ntawm tib artwork. Nws tau yug los ntawm qhov tsim nyog, tab sis nws kuj txhawb kev xav hauv cov lus ntawm cov yeeb yaj kiab es tsis yog ib tus neeg ua yeeb yam. Qhov teeb meem Nrog Manually Hloov Kho Xim Palette Cia peb ncaj nraim rau kuv qhov kev sib tw. Hauv Toon Titles zoo li no - raws li xyoo 1959 Yogi Bear Qhia ntu "Lullabye-Bye Bear" - thiab kuv txoj haujlwm feem ntau, palettes raug txwv rau ob peb xim.

Kuv tsim cov duab ntxoov ntxoo thiab tints los ntawm qhov kuv hu ua kuv "lub hauv paus" xim kom nthuav cov palette yam tsis ntxiv cov xim ntxiv.

Hauv Sketch, kuv ua haujlwm hauv HSL xim qhov chaw, yog li cov txheej txheem no suav nrog kev nce lossis txo tus nqi lightness ntawm kuv lub hauv paus xim. Ua siab ncaj, nws tsis yog ib txoj hauj lwm nyuaj - tab sis xaiv ib lub hauv paus xim sib txawv yuav tsum tsim kom muaj tag nrho cov xim tshiab thiab cov xim. Ua li ntawd manually, dua thiab dua, sai sai yuav laborious.

Kuv tau hais txog HSL - H (xaj), S (saturation), thiab L (lightness) - xim chaw, tab sis qhov ntawd tsuas yog ib qho ntawm ntau txoj hauv kev los piav txog xim. RGB - R (liab), G (ntsuab), B (xiav) - yog tej zaum paub zoo tshaj plaws, tsawg kawg hauv nws daim ntawv Hex. Tseem muaj LAB — L (lightness), A (ntsuab-liab), B (xiav-daj) — thiab cov tshiab, tab sis tam sim no dav txhawb LCH — L (lightness), C (chroma), H (xaj) — qauv hauv nws daim ntawv OKLCH. Nrog LCH - tshwj xeeb OKLCH hauv CSS - Kuv tuaj yeem kho tus nqi lightness ntawm kuv lub hauv paus xim.

Los yog kuv tuaj yeem hloov nws chroma. LCH chroma thiab HSL saturation ob leeg piav txog kev siv zog lossis kev nplua nuj ntawm cov xim, tab sis lawv ua li ntawd nyob rau hauv ntau txoj kev. LCH ua rau kuv muaj ntau yam dav thiab muaj kev kwv yees ntau dua ntawm cov xim.

Kuv kuj tuaj yeem hloov cov xim los tsim cov palette ntawm cov xim uas qhia tib qhov lightness thiab chroma qhov tseem ceeb. Nyob rau hauv ob qho tib si HSL thiab LCH, lub spectrum xim pib ntawm liab, txav los ntawm ntsuab thiab xiav, thiab rov qab mus rau liab.

Vim li cas OKLCH Hloov Kuv Xav Txog Xim Kev txhawb nqa browser rau OKLCH xim qhov chaw tam sim no nthuav dav, txawm tias cov cuab yeej tsim - suav nrog Sketch - tsis tau ntes. Hmoov zoo, qhov ntawd yuav tsum tsis txhob txwv koj los ntawm kev siv OKLCH. Browsers yuav zoo siab hloov Hex, HSL, LAB, thiab RGB qhov tseem ceeb rau hauv OKLCH rau koj. Koj tuaj yeem txhais CSS cov cuab yeej kev cai nrog lub hauv paus xim hauv txhua qhov chaw, suav nrog Hex: /* Foundation xim */ --foundation: #5accd6;

Txhua xim tau los ntawm nws yuav raug hloov mus rau hauv OKLCH tau: --foundation-light: oklch(los ntawm var(--foundation) [...]; } --foundation-mid: oklch(los ntawm var(--foundation) [...]; } --foundation-dark: oklch(los ntawm var(--foundation) [...]; }

Tus txheeb ze xim raws li ib tug tsim system Xav txog cov xim txheeb ze li hais tias: "Cia li xim no, tweak nws, ces muab qhov tshwm sim rau kuv." Muaj ob txoj hauv kev los kho cov xim: kev hloov pauv thiab kev hloov pauv. Lawv zoo sib xws hauv cov cai, tab sis coj txawv txawv thaum koj pib swapping lub hauv paus xim. Kev nkag siab qhov sib txawv yog dab tsi tuaj yeem tig siv cov xim txheeb ze rau hauv qhov system. /* Foundation xim */ --foundation: #5accd6;

Piv txwv li, tus nqi lightness ntawm kuv lub hauv paus xim yog 0.7837, thaum lub tsaus version muaj tus nqi ntawm 0.5837. Txhawm rau xam qhov sib txawv, kuv rho tawm tus nqi qis dua los ntawm qhov siab dua thiab siv qhov txiaj ntsig siv calc() muaj nuj nqi: --foundation-dub: oklch(los ntawm var(--foundation) calc (l - 0.20) c h);

Txhawm rau ua kom muaj xim sib dua, kuv ntxiv qhov sib txawv: -- foundation-light: oklch(los ntawm var(--foundation) calc(l + 0.10) c h);

Chromakev hloov kho raws li cov txheej txheem tib yam. Txhawm rau txo qhov kev siv ntawm kuv lub hauv paus xim ntawm 0.1035 txog 0.0035, kuv rho tawm ib qho nqi ntawm lwm tus: oklch(los ntawm var(--foundation) calc(c - 0.10) h);

Txhawm rau tsim ib lub palette ntawm hues, kuv xam qhov txawv ntawm tus nqi xim ntawm kuv lub hauv paus xim (200) thiab kuv cov xim tshiab (260): oklch(los ntawm var(--foundation) l c calc(h + 60);

Cov kev xam no yog kiag li. Thaum kuv rho tus nqi tas li, kuv hais tau zoo, "Ib txwm rho tawm ntau." Tib yam siv tau thaum ntxiv cov nqi ruaj khov: calc (c - 0.10) calc(c + 0.10)

Kuv kawm cov kev txwv ntawm txoj kev no txoj kev nyuaj. Thaum kuv tso siab rau rho tawm cov nqi chroma ruaj khov, cov xim ploj mus rau grey sai li sai tau thaum kuv hloov lub hauv paus. Ib lub palette uas ua haujlwm rau ib qho xim poob sib nrug rau lwm tus. Multiplication coj txawv txawv. Thaum kuv sib ntxiv chroma, kuv tab tom qhia qhov browser: "Txo cov xim no siv los ntawm kev faib ua feem." Kev sib raug zoo ntawm cov xim tseem nyob ruaj khov, txawm tias thaum lub hauv paus hloov: calc (c * 0.10)

Kuv Move It, Scale It, Rotate It Rules

Tsiv lightness (ntxiv lossis rho tawm), Scale chroma (ntau ntau), Tig xim (ntxiv lossis rho tawm degrees).

Kuv ntsuas chroma vim kuv xav kom siv zog hloov kom nyob twj ywm proportional rau lub hauv paus xim. Kev sib raug zoo ntawm Hawj txawm yog kev sib hloov, yog li kev sib npaug ntawm cov xim tsis muaj kev nkag siab. Lightness yog perceptual thiab kiag li - multiplying nws feem ntau tsim khib tshwm sim.

Los ntawm Ib Xim Rau Ib Lub Ntsiab Lus Tag Nrho Cov xim txheeb ze tso cai rau kuv los txhais lub hauv paus xim thiab tsim txhua yam xim uas kuv xav tau - sau, strokes, gradient nres, ntxoov ntxoo - los ntawm nws. Thaum lub sij hawm ntawd, xim nres ua palette thiab pib ua ib qho system. SVG illustrations zoo li rov siv tib ob peb xim nyob rau hauv sau, strokes, thiab gradients. Cov xim txheeb ze tso cai rau koj txhais cov kev sib raug zoo ib zaug thiab rov siv lawv txhua qhov chaw - zoo li cov animators rov siv cov keeb kwm yav dhau los tsim cov xwm txheej tshiab.

Hloov lub hauv paus xim ib zaug, thiab txhua txhua cov xim derived hloov tshiab tau txais, yam tsis muaj kev suav rov qab los ntawm tes. Sab nraum cov duab animated, kuv tuaj yeem siv tib txoj hauv kev los txhais cov xim rau cov xeev ntawm kev sib tham sib xws li cov nyees khawm thiab cov txuas. Lub hauv paus xim kuv siv hauv kuv "Lullabye-Bye Bear" Toon Title yog xiav-zoo li xiav. Cov keeb kwm yav dhau yog radial gradient nruab nrab ntawm kuv lub hauv paus thiab ib qho tsaus nti version.

Txhawm rau tsim lwm cov qauv nrog cov kev xav sib txawv, kuv tsuas yog yuav tsum tau hloov lub hauv paus xim: --foundation: #5accd6; --grad-kawg: var(--foundation); --grad-start: oklch(los ntawm var(--foundation) calc(l - 0.2357) calc(c * 0.833) h);

Txhawm rau khi cov cuab yeej kev cai rau kuv SVG gradient yam tsis muaj qhov sib npaug ntawm cov xim, Kuv tau hloov qhov nyuaj-coded nres-xim qhov tseem ceeb nrog cov qauv hauv kab:

Tom ntej no, kuv yuav tsum tau ua kom ntseeg tau tias kuv Cov Ntawv Toon ib txwm sib piv nrog cov xim twg kuv xaiv. Kev sib hloov ntawm 180deg hue ua rau cov xim ntxiv uas yeej pops - tab sis tuaj yeem co tsis xis nyob: .text-light { sau: oklch(los ntawm var(--foundation) l c calc(h + 180); }

Kev hloov pauv 90 ° ua rau cov xim zoo nkauj thib ob yam tsis tau ua tiav tag nrho: .text-light { sau: oklch(los ntawm var(--foundation) calc (h - 90); }

Kuv qhov kev ua si ntawm Quick Draw McGraw's 1959 Toon Title "El Kabong" siv tib cov txuj ci tab sis nrog ntau hom palette. Piv txwv li, muaj lwm qhov radial gradient ntawm lub hauv paus xim thiab ib qho ntxoov ntxoo tsaus.

Lub tsev thiab tsob ntoo nyob rau hauv keeb kwm yav dhau tsuas yog sib txawv ntxoov ntawm tib lub hauv paus xim. Rau txoj kev ntawd, kuv xav tau ob lub xim ntxiv: .bg-mid { sau: oklch(los ntawm var(--foundation) calc(l - 0.04) calc(c * 0.91) h); }

.bg- tsaus { sau: oklch(los ntawm var(--foundation) calc(l - 0.12) calc(c * 0.64) h); }

Thaum Lub Hauv Paus pib txav mus Txog tam sim no, txhua yam kuv tau qhia tau zoo li qub. Txawm tias thaum ib tug neeg siv cov xim xaiv los hloov lub hauv paus xim, qhov kev hloov ntawd tshwm sim tam sim ntawd. Tab sis cov duab animated tsis tshua muaj nyob hauv - cov lus qhia yog nyob rau hauv lub npe. Yog li, yog tias xim yog ib feem ntawm lub kaw lus, tsis muaj laj thawj nws tsis tuaj yeem ua haujlwm, ib yam nkaus. Txhawm rau ua kom lub hauv paus xim, kuv thawj zaug yuav tsum tau muab faib ua nws cov OKLCH raws- lightness, chroma, thiab xim. Tab sis muaj ib qho tseem ceeb ntxiv cov kauj ruam: Kuv yuav tsum tau sau npe cov txiaj ntsig raws li ntaus cov khoom siv. Tab sis qhov ntawd txhais li cas? Los ntawm lub neej ntawd, tus browser tsis paub tias CSS cov cuab yeej muaj nqis sawv cev rau xim, ntev, tus lej, lossis lwm yam tag nrho. Qhov ntawd feem ntau txhais tau tias lawv tsis tuaj yeem cuam tshuam ncaj qha thaum lub sijhawm ua yeeb yaj kiab, thiab dhia ntawm ib qho nqi mus rau lwm qhov. Kev sau npe rau cov cuab yeej kev cai qhia rau tus browser yam ntawm tus nqi nws sawv cev thiab nws yuav tsum coj li cas dhau sijhawm. Hauv qhov no, kuv xav kom tus browser kho kuv cov xim raws li cov lej kom lawv tuaj yeem ua kom zoo nkauj. @property --f-l { syntax: ""; qub txeeg qub teg: muaj tseeb; pib-tus nqi: 0.40; }

@property --f-c { syntax: ""; qub txeeg qub teg: muaj tseeb; pib-tus nqi: 0.11; }

@property --f-h { syntax: ""; qub txeeg qub teg: muaj tseeb; pib-tus nqi: 305; }

Thaum sau npe, cov cuab yeej kev cai no coj zoo li haiv neeg CSS. Lub browser tuaj yeem cuam tshuam lawv cov ncej-los-nruab nrab. Tom qab ntawd kuv rov tsim kho lub hauv paus xim ntawm cov channel: --foundation: oklch(var(--f-l) var(--f-c) var(--f-h));

Qhov no ua rau lub hauv paus xim ua animatable, ib yam li lwm tus nqi. Nov yog qhov yooj yim "ua pa" animation uas maj mam hloov lub teeb lub sijhawm: @keyframes ua pa { 0%, 100% { --f-l: 0.36; } 50% { --f-l: 0.46; } }

.toon-title { animation: ua pa 10s yooj yim-hauv-tawm infinite; }

Vim hais tias txhua lwm yam xim nyob rau hauv fills, gradients, thiab strokes yog muab los ntawm --foundation, lawv tag nrho animate ua ke, thiab tsis muaj dab tsi yuav tsum tau hloov kho manually. Ib qho Animated Xim, Muaj ntau yam teebmeem Thaum pib ntawm cov txheej txheem no, kuv xav tsis thoob tias CSS cov txiaj ntsig ntawm cov xim muaj txiaj ntsig tuaj yeem muaj peev xwm ntau dua thaum tseem ua rau lawv yooj yim dua los siv. Tsis ntev los no kuv tau ntxiv qhov tshiab kub kuv keeb kwm yav dhau rau kuv lub vev xaib nplooj ntawv tiv tauj, thiab thawj qhov kev rov ua dua suav nrog roj teeb uas ci ntsa iab thiab viav vias.

Kuv xav tshawb nrhiav yuav ua li cas animating CSS cov txheeb ze xim tuaj yeem ua rau kuv sab hauv zoo dua los ntawm tinting nws nrog cov xim ntawm cov teeb. Kuv xav kom lawv cuam tshuam rau lub ntiaj teb nyob ib puag ncig lawv, txoj kev teeb tiag tiag. Yog li, ntau dua li animating ntau xim, kuv tau tsim ib lub teeb pom kev zoo me me uas ua rau ib xim xwb.

Kuv thawj txoj haujlwm yog txhawm rau txhawm rau txheej txheej txheej ntawm keeb kwm yav dhau thiab kuv lub teeb:

Kuv siv mix-blend-hom: xim vim hais tias tints dab tsi hauv qab nws thaum khaws cia lub hauv paus luminance. Raws li kuv tsuas yog xav kom cov overlay pom thaum cov animations raug qhib, kuv tau ua qhov kev xaiv overlay: .svg-mine #overlay { zaub: tsis muaj; }

@media (xav-txo-tso tawm: tsis nyiam) { .svg-mine[data-animations=on] #overlay { zaub: thaiv; opacity: 0.5 hli; } }

Lub overlay nyob rau hauv qhov chaw, tab sis tseem tsis tau txuas nrog lub teeb. Kuv xav tau lub teeb ci. Kuv lub teeb yog yooj yim, thiab txhua tus muaj ib lub voj voog uas kuv plam nrog lub lim. Cov lim ua rau qhov muag plooj heev dhau ntawm tag nrho lub voj voog.

Es tsis txhob animating lub overlay thiab teeb sib cais, kuv animate ib qho "flame" xim token thiab muab txhua yam los ntawm qhov ntawd. Ua ntej, kuv sau npe peb hom kev cai khoom rau OKLCH raws: @property --fl-l { syntax: ""; qub txeeg qub teg: muaj tseeb; pib-tus nqi: 0.86; } @property --fl-c { syntax: ""; qub txeeg qub teg: muaj tseeb; pib-tus nqi: 0.12; } @property --fl-h { syntax: ""; qub txeeg qub teg: muaj tseeb; pib-tus nqi: 95; }

Kuv animated cov channel, txhob txwm thawb ob peb thav ntawv ntawm txiv kab ntxwv kom lub flicker nyeem kom meej li hluav taws:

@keyframes nplaim taws { 0%, 100% { --fl-l: 0.86; --fl-c: 0.12; --fl-h: 95; } 6% { --fl-l: 0.91; --fl-c: 0.10; --fl-h: 92; } 12% { --fl-l: 0.83; --fl-c: 0.14; --fl-h: 100; } 18% { --fl-l: 0.88; --fl-c: 0.11; --fl-h: 94; } 24% { --fl-l: 0.82; --fl-c: 0.16; --fl-h: 82; } 30% {--fl-l: 0.90; --fl-c: 0.12; --fl-h: 90; } 36% { --fl-l: 0.79; --fl-c: 0.17; --fl-h: 76; } 44% { --fl-l: 0.87; --fl-c: 0.12; --fl-h: 96; } 52% { --fl-l: 0.81; --fl-c: 0.15; --fl-h: 102; } 60% { --fl-l: 0.89; --fl-c: 0.11; --fl-h: 93; } 68% { --fl-l: 0.83; --fl-c: 0.16; --fl-h: 85; } 76% { --fl-l: 0.91; --fl-c: 0.10; --fl-h: 91; } 84% { --fl-l: 0.85; --fl-c: 0.14; --fl-h: 98; } 92% {--fl-l: 0.80; --fl-c: 0.17; --fl-h: 74; } }

Tom qab ntawd kuv tau txiav txim siab qhov kev ua yeeb yam ntawd rau SVG, yog li cov kev sib koom sib koom muaj nyob rau ob lub teeb thiab kuv cov overlay:

@media (xav-txo-tso tawm: tsis nyiam) { .svg-mine[data-animations=on] { animation: nplaim taws 3.6s infinite linear; cais: cais;

/* Tsim cov nplaim xim los ntawm cov channel animated */ --flame: oklch(var(--fl-l) var(--fl-c) var(--fl-h));

/* Teeb xim muab los ntawm nplaim taws */ --lamp-core: oklch(los ntawm var(--nplaim) calc(l + 0.05) calc(c * 0.70) h);

/* Overlay tint muab tau los ntawm tib lub nplaim taws */ --overlay-tint: oklch(los ntawm var(--nplaim) calc(l + 0.06) calc(c * 0.65) calc(h - 10)); } }

Thaum kawg, kuv tau siv cov xim uas tau muab los rau cov teeb ci ntsa iab thiab cov overlay lawv cuam tshuam: @media (xav-txo-tso tawm: tsis nyiam) { .svg-mine[data-animations=on] #mine-lamp-1 > lub voj voog, .svg-mine[data-animations=on] #mine-lamp-2 > lub voj voog { sau: var(--lamp-core); }

.svg-mine[data-animations=on] #overlay { zaub: thaiv; sau: var(--overlay-tint); opacity: 0.5 hli; } }

Thaum cov nplaim taws hloov mus rau txiv kab ntxwv, lub teeb sov tuaj, thiab qhov chaw sov nrog lawv. Thaum nplaim taws txias, txhua yam nyob ua ke. Qhov zoo tshaj plaws yog tsis muaj dab tsi sau manually. Yog hais tias kuv hloov lub hauv paus xim los yog tweak cov nplaim animation ranges, tag nrho cov teeb pom kev zoo hloov tshiab ib txhij. Koj tuaj yeem pom qhov kawg tshwm sim ntawm kuv lub vev xaib. Reused, Repurpose, Revisited Cov Hanna-Barbera animators raug yuam kom rov tsim cov ntsiab lus tawm ntawm qhov tsim nyog, tab sis kuv rov siv cov xim vim nws ua rau kuv txoj hauj lwm zoo sib xws thiab tswj tau yooj yim dua. CSS txheeb ze xim qhov tseem ceeb tso cai rau kuv mus:

Txhais ib lub hauv paus xim, Piav seb lwm cov xim cuam tshuam li cas rau nws, Rov qab siv cov kev sib raug zoo nyob txhua qhov chaw, thiab Animate lub system los ntawm kev hloov ib tug nqi.

Cov xim txheeb ze tsis yog ua rau lawv yooj yim dua. Nws txhawb txoj kev xav qhov twg xim, zoo li cov lus tsa suab, yog txhob txwm - thiab qhov twg hloov ib tus nqi tuaj yeem hloov pauv tag nrho qhov xwm txheej yam tsis tau sau cov haujlwm hauv qab nws.

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