Google 會運用 AI 技術將內容翻譯成你偏好的語言,但可能會出錯。
避免使用非合成動畫
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
網頁上的部分動畫可以完全在轉譯管道的合成器階段處理。
未合成的動畫需要更多工作,而且在低階手機上或在主執行緒上執行效能密集的工作時,可能會出現「卡頓」 (不順暢) 的情形。
非合成的動畫也會增加網頁的累計版面配置位移 (CLS),因為這類動畫會導致 CLS 演算法評估的元素實際移動,進而影響其他元素的位移。合成的動畫不會導致其他元素移動,因此會從 CLS 中排除。降低 CLS 可提升 Lighthouse 效能分數。
背景
瀏覽器用來將 HTML、CSS 和 JavaScript 轉換為像素的演算法,統稱為轉譯管道。
轉譯管道。
即使您不瞭解算繪管線的每個步驟代表什麼,也沒關係。目前要瞭解的重點是,在轉譯管道的每個步驟中,瀏覽器都會使用先前作業的結果來建立新資料。舉例來說,如果程式碼會觸發版面配置,則需要再次執行 Paint 和 Composite 步驟。非合成的動畫是指會觸發轉譯管道中較早步驟 (樣式、版面配置或繪製) 的任何動畫。非合成的動畫效能較差,因為這類動畫會迫使瀏覽器執行更多工作。
請參閱下列資源,深入瞭解算繪管道:
Lighthouse 如何偵測未合成的動畫
如果無法合成動畫,Chrome 會將失敗原因回報給開發人員工具追蹤記錄,而 Lighthouse 會讀取這項資訊。Lighthouse 會列出 DOM 節點,其中動畫未經合成,並附上每個動畫的失敗原因。
如何確保動畫合成
請參閱「只使用合成器專屬屬性並管理圖層數量」和「高效能動畫」。
資源
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2024-12-08 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2024-12-08 (世界標準時間)。"],[],[]]