>我進入網絡開發的旅程是在多年的運動圖形作用之後起作用的。 儘管經歷了這種經驗,但Web動畫最初感到艱鉅。 視頻圖形定義了導出設置; Web動畫必須動態適應各種設備。 讓我們探索響應式動畫技術。
動畫目的:至關重要的第一步
在編碼之前,請考慮動畫的預期用途(如Zach Saucier在響應式動畫上的出色文章中所建議)。
>是可重複使用的模塊嗎?它需要縮放嗎? 了解這些因素可以指導您的方法並阻止浪費的努力。
>動畫通常屬於以下類別:
>- 固定:圖標或裝載機在所有設備上保持一致的尺寸和縱橫比。 簡單的基於像素的值就足夠了。
- 流體:動畫無縫地適應不同的屏幕尺寸。 佈局動畫常見。 針對性的
- >動畫特定於某些設備或斷點(例如,僅桌面效果或觸摸/懸停相互作用)。 >
>流體和有針對性的動畫需要不同的策略。
>流體動畫:授權瀏覽器
>流體動畫利用瀏覽器功能。 適當的單位是關鍵。 使用視口單元允許動畫通過瀏覽器調整大小的瀏覽器進行流暢。
>避免動畫佈局屬性(例如
>和),該屬性可能導致倒流和生動畫。 優先級left
>和top
屬性。 transform
opacity
超越視口單元,探索以下選項:
SVG單元:固有的響應
SVG的固有可伸縮性簡化了響應動畫。屬性定義了SVG畫布的可見部分。 在此空間中進行動畫確保行為一致,無論SVG尺寸如何。
相對於HTML中父容器的孩子元素的動畫元素更為複雜。 通常需要使用JavaScript調整調整大小的位置,以防止性能問題。>viewBox
>容器單元:
桌面:
移動/平板電腦:
翻轉
>動畫複雜佈局變化(例如,相對定位和固定定位之間的過渡)具有挑戰性。 翻轉技術優雅地解決了這一點:
- 首先:>捕獲初始元素位置。 >
- >最後一個:>將元素移至其最終位置。 >
- 倒置:>應用逆變換以在視覺上維護初始狀態。
- >播放:從(偽造的)初始狀態到最終狀態的動畫。
gsap的翻轉插件簡化了此過程。 要更深入地了解香草JavaScript實施,請參閱Paul Lewis的博客文章。
>流暢的縮放SVG和畫布
> svg's preserveAspectRatio
屬性微調縮放行為,提供meet
(contail)和slice
和一個包含元素來揭示更多較大屏幕尺寸的SVG動畫。
overflow: visible
畫布雖然高表現要復雜動畫,但仍需要更多的手動管理來響應。 固定的長寬比和自定義單元系統可以模仿SVG的易用性。 請記住要在調整大小上匯總Redraw操作。 像喬治·弗朗西斯(George Francis)這樣的圖書館可以簡化此過程。
>目標動畫:針對特定設備進行優化
>移動設備通常受益於簡化或缺席的動畫,以增強性能和用戶體驗。 媒體查詢目標特定的視口大小:CSS動畫可以通過媒體查詢來控制。 GSAP的
簡化了在不同斷點上管理JavaScript動畫的管理,從而自動處理清理和資源管理。 超出屏幕尺寸,考慮,
和媒體功能。 gsap.matchMedia()
>
prefers-reduced-motion
超越屏幕尺寸:交互考慮orientation
max-resolution
不同的設備提供不同的交互方法。
傑克·懷特利(Jake Whiteley)的建議強調了在設計佈局和動畫時優先考慮輸入設備(觸摸與懸停)。
hover
scrolltrigger增強
@media (hover: hover) { /* CSS hover state */ }> gsap的scrolltrigger插件
屬性標識觸摸功能:
0:無觸摸
isTouch
1:僅觸摸
- 2:觸摸和指針
- >對於滾動觸發的動畫,請使用 重新計算依賴瀏覽器大小的屏幕尺寸的值。 GSAP 3.10's
- 可防止由於在移動上的欄更改而導致的不必要的刷新。
- 距離和寬鬆:動畫速度應與行進的距離有關。 更長的距離證明了更加戲劇性的寬鬆合理性。 基於屏幕寬度動態調整持續時間。 基於屏幕尺寸的
- >間距和數量:調整元素間距和數量。 將動畫視為一個階段,將元素添加和刪除為編舞的一部分(Opher Vishnia的方法)。
運動原理:增強可信度
以上是每個屏幕尺寸和設備的響應動畫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

對於Astro,我們可以在構建過程中生成大部分網站,但是有一小部分服務器端代碼可以使用Fuse.js之類的搜索功能來處理搜索功能。在此演示中,我們將使用保險絲搜索一組個人“書籤”


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

DVWA
Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。