រំលងទៅខ្លឹមសារមេ

បង្កើត CSS Cubic-Bezier Easing ឥតគិតថ្លៃ

រចនា CSS easing curve ដោយ drag control point, មើលជាមុនចលនាផ្ទាល់ ហើយចម្លងតម្លៃ cubic-bezier()។ រួមបញ្ចូល preset overshoot/bounce។

ធ្វើការក្រៅបណ្តាញនៅពេលបានផ្ទុករួច

អូស handle teal & rose ដើម្បីកំណត់រូបបោះ curve

ចំណុច​ត្រួតត្រា
មើលជាមុន motion
ការផ្លាស់ប្ដូរទទឹង
តម្លៃ CSS
transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);

លំនាំដើម

Handle rose និង teal អាចទាញឡើងលើ ឬចុះក្រោមប្រអប់ (Y លើស 0-1) ដើម្បីបង្កើតឥទ្ធិពល 'overshoot' / bounce ដូចជា back-out និង anticipate។ X នៅតែក្នុង 0-1 (ពេលវេលាមិនអាចបញ្ច្រាស)។

ការប្រើប្រាស់ទូទៅ

  • CSS ក្រើម ផ្សេងៗផ្សេងដែលម៉ាករចនាម៉ាក-លក្ខណៈឥទ្ធិយ ឥទ្ធិយលាក់ខ្លួនកម្ម និងវ៉ាលាលាក់ UI។
  • សរុប និងលាប់ពាក់ព័ន្ធបង្កើតលាង់ស្វាម្ភន ឆ្ងាយដ៏សប្បាយ ដោយដុត័រថាលក្ខណៈសម្បត្តិនៅលើខ្សែប្រឹក្សា។
  • @keyframes ក្រើម សម្រាប់ជ្រើសរើស CSS keyframe ក្រើម សម្រាប់កម្មវិធីក្រើម។
  • cubic-bezier មាត្រដ្ឋាន សម្រាប់ JS ក្រើម ឯកសារទទួលបាន cubic-bezier មាត្រដ្ឋាន សម្រាប់ GSAP, Framer Motion, anime.js, និងលើសពីនេះ។
  • ស្វាគមន៍ ក្រើម ដោះស្រាយលំហូរមើលលទ្ធផល រវាង Bezier ខ្សែពាក់ទ្រនិច និងលំហូរ ដែលវាបង្កើត។

វាដំណើរការដោយរបៀបណា

ឧបករណ៍កែសម្រួលត្រូវបានបង្កើតទាំងស្រុងនៅក្នុងកម្មវិធីរុករកដោយប្រើ React state និង SVG — គ្មានបណ្ណាល័យដោះស្រាយគណិតវិទ្យាខ្សែកោងទេ។ ចំណុចត្រួតពិនិត្យដែលអូសបានពីរកំណត់ផ្លូវ SVG cubic Bezier ហើយម៉ាស៊ីនអានីម៉ាស្យុង CSS ផ្ទាល់របស់កម្មវិធីរុករកដំណើរការការមើលជាមុនចលនាដោយចាក់បញ្ចូលតម្លៃ cubic-bezier() លទ្ធផលដោយផ្ទាល់ទៅច្បាប់ @keyframes។

  1. 1
    អូស ឬវាយចំណុចត្រួតពិនិត្យ
    ចំណុចទាញពីរ (P1 ពណ៌ខៀវបៃតង P2 ពណ៌ផ្កាកុលាប) ស្ថិតលើ canvas SVG។ ការអូសប្រើ Pointer Events API ជាមួយ setPointerCapture ដូច្នេះចំណុចទាញតាមដានម្រាមដៃ ឬកូនកណ្តុររបស់អ្នកទោះបីនៅក្រៅព្រំដែន SVG ក៏ដោយ។ អ្នកក៏អាចរុញចំណុចទាញជាមួយគ្រាប់ចុចព្រួញ ឬវាយតម្លៃច្បាស់លាស់ទៅធាតុចូលលេខ x1/y1/x2/y2។
  2. 2
    SVG គូរខ្សែកោងក្នុងពេលវេលាពិត
    ខ្សែកោងជាធាតុ SVG <path> តែមួយដែលពាក្យបញ្ជា C (cubic Bezier) របស់វាត្រូវបានគណនាឡើងវិញពីកូអរដោនេចំណុចត្រួតពិនិត្យទាំងបួននៅរាល់ការធ្វើបច្ចុប្បន្នភាពស្ថានភាព។ គ្មាន canvas គ្មានបណ្ណាល័យខាងក្រៅទេ — ម៉ាស៊ីនបង្ហាញ SVG របស់កម្មវិធីរុករកគូរផ្លូវដោយផ្ទាល់។
  3. 3
    ម៉ាស៊ីន CSS កម្មវិធីរុករកបង្ហាញការមើលជាមុនការធ្វើឱ្យរលូន
    អានីម៉ាស្យុងផ្ទាល់បី (ចំណុចរអិល ការផ្លាស់ប្តូរទទឹង និងមាត្រដ្ឋាន) ដំណើរការ CSS @keyframes ជាមួយតម្លៃ cubic-bezier() ចាក់បញ្ចូលក្នុងបន្ទាត់។ ម៉ាស៊ីនអានីម៉ាស្យុងផ្ទាល់របស់កម្មវិធីរុករកបកស្រាយខ្សែកោង ដូច្នេះអ្វីដែលអ្នកឃើញគឺពិតជាអ្វីដែល CSS ផលិតកម្មរបស់អ្នកនឹងផលិត។
  4. 4
    ចម្លងខ្លីៗក្នុងវាក្យសម្ព័ន្ធក្របខ័ណ្ឌរបស់អ្នក
    ផ្ទាំងធ្វើទ្រង់ទ្រាយលេខបួនដូចគ្នាជា CSS transition-timing-function ថ្នាក់តម្លៃបំពាន Tailwind ជួរ ease Framer Motion ឬ string ការធ្វើឱ្យរលូន anime.js។ ខ្លីៗត្រូវបានសរសេរទៅក្ដារតម្បៀតខ្ទាស់ជាមួយ navigator.clipboard។ ខ្សែកោងក៏ត្រូវបានអ៊ិនកូដក្នុង URL hash (#b=x1,y1,x2,y2) ដូច្នេះអ្នកអាចចែករំលែក ឬចំណាំវា។

ឧបករណ៍ពាក់ព័ន្ធ

សំណួរដែលសួរជាញឹកញាប់